次の方法で共有


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 

注釈

注意

WebRequestHttpWebRequestServicePointWebClient は廃止されており、新しい開発には使用しないでください。 代わりに HttpClient を使用してください。

Credentials プロパティには、ホスト上のリソースへのアクセスに使用される認証資格情報が含まれます。 ほとんどのクライアント側のシナリオでは、現在ログオンしているユーザーの資格情報である DefaultCredentialsを使用する必要があります。 これを行うには、このプロパティを設定するのではなく、UseDefaultCredentials プロパティを true に設定します。

WebClient クラスが中間層アプリケーション (ASP.NET アプリケーションなど) で使用されている場合、DefaultCredentials は ASP ページ (サーバー側の資格情報) を実行しているアカウントに属します。 通常、このプロパティは、要求が行われるクライアントの資格情報に設定します。

セキュリティ上の理由から、リダイレクトを自動的に実行する場合は、リダイレクトに含める資格情報を CredentialCache に格納し、このプロパティに割り当てます。 このプロパティは、CredentialCache以外のものが含まれている場合、リダイレクト時に自動的に null に設定されます。 これらの条件下でこのプロパティ値を自動的に null に設定すると、意図しない宛先に資格情報が送信されなくなります。

適用対象

こちらもご覧ください