Udostępnij za pośrednictwem


WebClient.Credentials Właściwość

Definicja

Pobiera lub ustawia poświadczenia sieciowe wysyłane do hosta i używane do uwierzytelniania żądania.

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

Wartość właściwości

ICredentials zawierający poświadczenia uwierzytelniania dla żądania. Wartość domyślna to null.

Przykłady

Poniższy przykład kodu używa poświadczeń systemowych użytkownika do uwierzytelniania żądania.

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 

Uwagi

Ostrożność

WebRequest, HttpWebRequest, ServicePointi WebClient są przestarzałe i nie należy ich używać do tworzenia nowych aplikacji. Zamiast tego użyj HttpClient.

Właściwość Credentials zawiera poświadczenia uwierzytelniania używane do uzyskiwania dostępu do zasobu na hoście. W większości scenariuszy po stronie klienta należy użyć DefaultCredentials, które są poświadczeniami aktualnie zalogowanego użytkownika. W tym celu ustaw właściwość UseDefaultCredentials na true zamiast ustawiać tę właściwość.

Jeśli klasa WebClient jest używana w aplikacji warstwy środkowej, takiej jak aplikacja ASP.NET, DefaultCredentials należy do konta z uruchomioną stroną ASP (poświadczenia po stronie serwera). Zazwyczaj tę właściwość należy ustawić na poświadczenia klienta, którego imieniu jest wykonywane żądanie.

Ze względów bezpieczeństwa podczas automatycznego wykonywania przekierowań zapisz poświadczenia, które mają zostać uwzględnione w przekierowaniu w CredentialCache i przypisz je do tej właściwości. Ta właściwość zostanie automatycznie ustawiona na null po przekierowaniu, jeśli zawiera wszystkie elementy z wyjątkiem CredentialCache. Ustawienie tej wartości właściwości na wartość null w tych warunkach uniemożliwia wysyłanie poświadczeń do niezamierzonego miejsca docelowego.

Dotyczy

Zobacz też