Поделиться через


Проверка подлинности NTLM и Kerberos

Проверка подлинности 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 не работает через прокси-сервер.

См. также