CredentialCache.DefaultCredentials 属性

定义

获取应用程序的系统凭据。Gets the system credentials of the application.

public:
 static property System::Net::ICredentials ^ DefaultCredentials { System::Net::ICredentials ^ get(); };
public static System.Net.ICredentials DefaultCredentials { get; }
member this.DefaultCredentials : System.Net.ICredentials
Public Shared ReadOnly Property DefaultCredentials As ICredentials

属性值

表示应用程序的系统凭据的 ICredentialsAn ICredentials that represents the system credentials of the application.

示例

下面的代码示例使用 DefaultCredentials 属性获取应用程序的系统凭据。The following code example uses the DefaultCredentials property to get the system credentials of the application.

// Ensure Directory Security settings for default web site in IIS is "Windows Authentication".
String^ url = "http://localhost";

// Create a 'HttpWebRequest' object with the specified url.
HttpWebRequest^ myHttpWebRequest = dynamic_cast<HttpWebRequest^>(WebRequest::Create( url ));

// Assign the credentials of the logged in user or the user being impersonated.
myHttpWebRequest->Credentials = CredentialCache::DefaultCredentials;

// Send the 'HttpWebRequest' and wait for response.
HttpWebResponse^ myHttpWebResponse = dynamic_cast<HttpWebResponse^>(myHttpWebRequest->GetResponse());
Console::WriteLine( "Authentication successful" );
Console::WriteLine( "Response received successfully" );

// Ensure Directory Security settings for default web site in IIS is "Windows Authentication".
string url = "http://localhost";
// Create a 'HttpWebRequest' object with the specified url. 
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url); 
// Assign the credentials of the logged in user or the user being impersonated.
myHttpWebRequest.Credentials = CredentialCache.DefaultCredentials;
// Send the 'HttpWebRequest' and wait for response.            
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse(); 
Console.WriteLine("Authentication successful");
Console.WriteLine("Response received successfully");
' Assuming "Windows Authentication" has been set as; 
' Directory Security settings for default web site in IIS.
Dim url As String = "http://localhost"
' Create a 'HttpWebRequest' object with the specified url. 
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(url), HttpWebRequest)
' Assign the credentials of the logged in user or the user being impersonated.
myHttpWebRequest.Credentials = CredentialCache.DefaultCredentials
' Send the 'HttpWebRequest' and wait for response.            
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
Console.WriteLine("Authentication successful")
Console.WriteLine("Response received successfully")

注解

DefaultCredentials 属性仅适用于 NTLM、协商和基于 Kerberos 的身份验证。The DefaultCredentials property applies only to NTLM, negotiate, and Kerberos-based authentication.

DefaultCredentials 表示在其中运行应用程序的当前安全上下文的系统凭据。DefaultCredentials represents the system credentials for the current security context in which the application is running. 对于客户端应用程序,这些通常是运行应用程序的用户的 Windows 凭据(用户名、密码和域)。For a client-side application, these are usually the Windows credentials (user name, password, and domain) of the user running the application. 对于 ASP.NET 应用程序,默认凭据是已登录用户或正在模拟的用户的用户凭据。For ASP.NET applications, the default credentials are the user credentials of the logged-in user, or the user being impersonated.

若要获取作为 NetworkCredential 实例的凭据,请使用 DefaultNetworkCredentials 属性。To get the credentials as a NetworkCredential instance, use the DefaultNetworkCredentials property.

authType 支持的值为 "NTLM"、"Digest"、"Kerberos" 和 "Negotiate"。The supported values for authType are "NTLM", "Digest", "Kerberos", and "Negotiate". 此方法对 HTTP 或 FTP 协议不起作用。This method does not work for HTTP or FTP protocols.

备注

DefaultCredentials 返回的 ICredentials 实例无法用于查看当前安全上下文的用户名、密码或域。The ICredentials instance returned by DefaultCredentials cannot be used to view the user name, password, or domain of the current security context.

适用于