WebClient.Credentials Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
, ServicePoint
i 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.