다음을 통해 공유


WebClient.Credentials 속성

정의

호스트로 전송되고 요청을 인증하는 데 사용되는 네트워크 자격 증명을 가져오거나 설정합니다.

public:
 property System::Net::ICredentials ^ Credentials { System::Net::ICredentials ^ get(); void set(System::Net::ICredentials ^ value); };
public System.Net.ICredentials? Credentials { get; set; }
public System.Net.ICredentials Credentials { get; set; }
member this.Credentials : System.Net.ICredentials with get, set
Public Property Credentials As ICredentials

속성 값

요청에 대한 인증 자격 증명을 포함하는 ICredentials. 기본값은 null.

예제

다음 코드 예제에서는 사용자의 시스템 자격 증명을 사용하여 요청을 인증합니다.

int main()
{
   try
   {
      WebClient^ client = gcnew WebClient;
      client->Credentials = CredentialCache::DefaultCredentials;
      array<Byte>^pageData = client->DownloadData( "http://www.contoso.com" );
      String^ pageHtml = Encoding::ASCII->GetString( pageData );
      Console::WriteLine( pageHtml );
   }
   catch ( WebException^ webEx ) 
   {
      Console::Write( webEx );
   }

}

public static void Main()
{           
    try {

        WebClient client = new WebClient();

        client.Credentials = CredentialCache.DefaultCredentials;

        Byte[] pageData = client.DownloadData("http://www.contoso.com");
        string pageHtml = Encoding.ASCII.GetString(pageData);
        Console.WriteLine(pageHtml);
    } catch (WebException webEx) {
        Console.Write(webEx.ToString());
    }
}    
Public Shared Sub Main()
    Try
        Dim client As New WebClient()

        client.Credentials = CredentialCache.DefaultCredentials

        Dim pageData As [Byte]() = client.DownloadData("http://www.contoso.com")
        Dim pageHtml As String = Encoding.ASCII.GetString(pageData)
        
        Console.WriteLine(pageHtml)

    Catch webEx As WebException
        Console.Write(webEx.ToString())
    End Try
End Sub 

설명

주의

WebRequest, HttpWebRequest, ServicePointWebClient 사용되지 않으므로 새 개발에 사용하면 안 됩니다. 대신 HttpClient 사용합니다.

Credentials 속성에는 호스트의 리소스에 액세스하는 데 사용되는 인증 자격 증명이 포함됩니다. 대부분의 클라이언트 쪽 시나리오에서는 현재 로그온한 사용자의 자격 증명인 DefaultCredentials사용해야 합니다. 이렇게 하려면 이 속성을 설정하는 대신 UseDefaultCredentials 속성을 true 설정합니다.

ASP.NET 애플리케이션과 같은 중간 계층 애플리케이션에서 WebClient 클래스를 사용하는 경우 DefaultCredentials ASP 페이지(서버 쪽 자격 증명)를 실행하는 계정에 속합니다. 일반적으로 요청을 대신하는 클라이언트의 자격 증명으로 이 속성을 설정합니다.

보안상의 이유로 리디렉션을 자동으로 따르는 경우 리디렉션에 포함할 자격 증명을 CredentialCache 저장하고 이 속성에 할당합니다. 이 속성은 CredentialCache제외한 모든 항목이 포함된 경우 리디렉션 시 자동으로 null 설정됩니다. 이러한 조건에서 이 속성 값을 자동으로 null 설정하면 자격 증명이 의도하지 않은 대상으로 전송되지 않습니다.

적용 대상

추가 정보