2011-03-01 5 views
4

FTP Login using Windows Credentials과 관련된 질문이지만이 스레드에서는 토론이 다른 방향으로 진행되었습니다..NET에서 FTP 연결을 위해 Windows 자격 증명 사용

CredentialCache.DefaultCredentials은 FTP에서 작동하지 않습니다. C#에서 FTP 연결을위한 자격 증명으로 Windows 사용자 계정을 사용하는 방법이 있습니까?

FTP 서버가 인증을 위해 Kerberos 티켓을 허용 할 수있는 경우 FtpWebRequest 클래스를 사용하여 어떻게 전송할 수 있습니까?

답변

0

아래는 FTP에 로그인하는 3 가지 방법이다, 그러나 여전히 사용자 이름이나 암호 중 하나에 대한 사용자의 입력이 필요합니다

System.Net.FtpWebRequest f = System.Net.FtpWebRequest.Create(new Uri("ftp://somewhere.com")) as System.Net.FtpWebRequest; 
    if (f != null) 
    { 
     f.Credentials = new System.Net.NetworkCredential("username", "password", "domain"); 
     f.Credentials = new System.Net.NetworkCredential("username", "password"); 
     f.Credentials = new System.Net.NetworkCredential(System.Security.Principal.WindowsIdentity.GetCurrent().Name, "password"); 
    } 

마지막 하나는 여전히 Windows 사용자 이름이 필요하지만 암호를 얻을 수있는 방법이 필요 사용자로부터

+0

현재 로그인 한 사용자의 Kerberos 티켓을 FTP 로그인에 전달하는 방법이 필요합니다. –

+0

저급으로 설정하는 것 외에는 현재 사용 가능한 클래스로 어떻게 수행 할 수 있는지 알지 못합니다. 제 3 자 또는 오픈 소스 라이브러리를 사용하더라도 저수준으로 이동해야합니다. –

0

나는 어떤 자격 증명을 말하는지 잘 모르겠습니다.

당신은 다음 FTP의 사용자 이름과 암호에 대해 얘기하는 경우 :

R.Credentials = new NetworkCredential(UserName, Password); 

트릭을 할해야합니다.

같은 방법으로 탐색기 프록시를 통해 이동하거나 파이어 폭스 다음 프록시를 전달하는 윈도우에서 사용하는 프록시 자격 증명에 대해 묻는 경우 :

R.Proxy = new WebProxy(); 

이 트릭을 할 것입니다.

+0

현재 로그인 한 사용자 자격 증명을 사용하고 싶습니다. –

관련 문제