默認 NTLM 驗證和 Kerberos 驗證會使用與呼叫端應用程式相關聯的 Microsoft Windows 使用者認證來嘗試向伺服器進行驗證。 使用非預設 NTLM 驗證時,應用程式會將驗證類型設定為 NTLM,並使用 NetworkCredential 物件將使用者名稱、密碼和網域傳遞至主機,如下列範例所示。
Dim myUri As String = "http://www.contoso.com/"
Using handler As New HttpClientHandler()
With handler
.Credentials = New NetworkCredential(UserName, SecurelyStoredPassword, Domain)
End With
Using client As New HttpClient(handler)
Dim result As String = Await client.GetStringAsync(myUri)
' Do Other Stuff...
End Using
End Using
string myUri = "http://www.contoso.com/";
using HttpClientHandler handler = new()
{
Credentials = new NetworkCredential(UserName, SecurelyStoredPassword, Domain),
};
using HttpClient client = new(handler);
string result = await client.GetStringAsync(myUri);
// Do Other Stuff...
需要使用應用程式使用者認證連線到因特網服務的應用程式可以使用使用者的預設認證來執行此動作,如下列範例所示。
Dim myUri As String = "http://www.contoso.com/"
Using handler As New HttpClientHandler()
With handler
.Credentials = CredentialCache.DefaultCredentials
End With
Using client As New HttpClient(handler)
Dim result As String = Await client.GetStringAsync(myUri)
' Do Other Stuff...
End Using
End Using
string myUri = "http://www.contoso.com/";
using HttpClientHandler handler = new()
{
Credentials = CredentialCache.DefaultCredentials,
};
using HttpClient client = new(handler);
string result = await client.GetStringAsync(myUri);
// Do Other Stuff...
交涉驗證模組會判斷遠端伺服器是否使用NTLM或 Kerberos驗證,並傳送適當的回應。
備註
NTLM 驗證無法透過 Proxy 伺服器運作。