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


NegotiateStream.AuthenticateAsClient Метод

Определение

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер.

Перегрузки

AuthenticateAsClient()

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер.

AuthenticateAsClient(NetworkCredential, String)

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные клиента.

AuthenticateAsClient(NetworkCredential, ChannelBinding, String)

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные клиента и привязку канала.

AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные сервера и параметры проверки подлинности.

AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel)

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные, параметры проверки подлинности и привязку канала.

AuthenticateAsClient()

Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер.

public:
 virtual void AuthenticateAsClient();
public virtual void AuthenticateAsClient ();
abstract member AuthenticateAsClient : unit -> unit
override this.AuthenticateAsClient : unit -> unit
Public Overridable Sub AuthenticateAsClient ()

Исключения

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Объект закрыт.

Проверка подлинности уже выполнена.

-или-

Этот поток уже использовался ранее при попытке проверки подлинности со стороны сервера. Этот поток нельзя использовать для повторной проверки подлинности со стороны клиента.

Комментарии

При проверке подлинности используется клиент .DefaultCredentials Имя субъекта-службы (SPN) для сервера не указано. Уровень олицетворения — Identification, уровень безопасности — EncryptAndSign, и запрашивается взаимная проверка подлинности. Класс NegotiateStream создаст имя субъекта-службы, используемое для взаимной проверки подлинности.

После успешной проверки подлинности необходимо проверка IsEncrypted свойства и IsSigned , чтобы определить, какие службы безопасности используются NegotiateStream. Проверьте свойство , IsMutuallyAuthenticated чтобы определить, произошла ли взаимная проверка подлинности.

Если проверка подлинности завершается сбоем AuthenticationException , вы получите или InvalidCredentialException. В этом случае можно повторить проверку подлинности с другими учетными данными.

Применяется к

AuthenticateAsClient(NetworkCredential, String)

Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные клиента.

public:
 virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::String ^ targetName);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, string targetName);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * string -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * string -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, targetName As String)

Параметры

credential
NetworkCredential

Учетные данные NetworkCredential, используемые для установления идентификации клиента.

targetName
String

Имя участника-службы (SPN), уникально определяющее сервер, подлинность которого проверяется.

Исключения

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Объект закрыт.

Проверка подлинности уже выполнена.

-или-

Этот поток уже использовался ранее при попытке проверки подлинности со стороны сервера. Этот поток нельзя использовать для повторной проверки подлинности со стороны клиента.

targetName имеет значение null.

Комментарии

Уровень олицетворения — Identification, уровень безопасности — EncryptAndSign, и запрашивается взаимная проверка подлинности. Класс NegotiateStream создаст имя субъекта-службы, используемое для взаимной проверки подлинности.

После успешной проверки подлинности необходимо проверка IsEncrypted свойства и IsSigned , чтобы определить, какие службы безопасности используются NegotiateStream. Проверьте свойство , IsMutuallyAuthenticated чтобы определить, произошла ли взаимная проверка подлинности.

Применяется к

AuthenticateAsClient(NetworkCredential, ChannelBinding, String)

Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные клиента и привязку канала.

public:
 virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::Security::Authentication::ExtendedProtection::ChannelBinding ^ binding, System::String ^ targetName);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding? binding, string targetName);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding binding, string targetName);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, binding As ChannelBinding, targetName As String)

Параметры

credential
NetworkCredential

Учетные данные NetworkCredential, используемые для установления идентификации клиента.

binding
ChannelBinding

Объект ChannelBinding, который используется для расширенной защиты.

targetName
String

Имя участника-службы (SPN), уникально определяющее сервер, подлинность которого проверяется.

Исключения

targetName имеет значение null.

-или-

credential имеет значение null.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Проверка подлинности уже выполнена.

-или-

Этот поток уже использовался ранее при попытке проверки подлинности со стороны сервера. Этот поток нельзя использовать для повторной проверки подлинности со стороны клиента.

Объект закрыт.

Комментарии

Уровень олицетворения — Identification, уровень безопасности — EncryptAndSign, и запрашивается взаимная проверка подлинности. Класс NegotiateStream создаст имя субъекта-службы, используемое для взаимной проверки подлинности.

Объект , используемый ChannelBinding для расширенной защиты, который передается этому методу в параметре binding , будет получен приложением из TransportContext свойства в связанном SslStreamобъекте .

После успешной проверки подлинности необходимо проверка IsEncrypted свойства и IsSigned , чтобы определить, какие службы безопасности используются NegotiateStream. Проверьте свойство , IsMutuallyAuthenticated чтобы определить, произошла ли взаимная проверка подлинности.

См. также раздел

Применяется к

AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные сервера и параметры проверки подлинности.

public:
 virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::String ^ targetName, System::Net::Security::ProtectionLevel requiredProtectionLevel, System::Security::Principal::TokenImpersonationLevel allowedImpersonationLevel);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, targetName As String, requiredProtectionLevel As ProtectionLevel, allowedImpersonationLevel As TokenImpersonationLevel)

Параметры

credential
NetworkCredential

Учетные данные NetworkCredential, используемые для установления идентификации клиента.

targetName
String

Имя участника-службы (SPN), уникально определяющее сервер, подлинность которого проверяется.

requiredProtectionLevel
ProtectionLevel

Одно из значений перечисления ProtectionLevel, указывающее службы безопасности для потока.

allowedImpersonationLevel
TokenImpersonationLevel

Одно из значений перечисления TokenImpersonationLevel, указывающее, как сервер может использовать учетные записи клиента для доступа к ресурсам.

Исключения

allowedImpersonationLevel не является допустимым значением.

Параметр targetName имеет значение null.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Объект закрыт.

Проверка подлинности уже выполнена.

-или-

Этот поток уже использовался ранее при попытке проверки подлинности со стороны сервера. Этот поток нельзя использовать для повторной проверки подлинности со стороны клиента.

Комментарии

Используйте параметр для requiredProtectionLevel запроса служб безопасности данных, передаваемых с помощью потока, прошедшего проверку подлинности. Например, чтобы данные были зашифрованы и подписаны, укажите EncryptAndSign значение . Успешная проверка подлинности не гарантирует, что запрошенная ProtectionLevel проверка подлинности была предоставлена. Необходимо проверка IsEncrypted свойства и IsSigned , чтобы определить, какие службы безопасности используются NegotiateStream.

Если проверка подлинности завершается сбоем AuthenticationException , вы получите или InvalidCredentialException. В этом случае можно повторить проверку подлинности с другими учетными данными.

Применяется к

AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel)

Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs
Исходный код:
NegotiateStream.cs

Вызывается клиентами для проверки подлинности клиента и, при необходимости, сервера в соединении клиент-сервер. Процесс проверки подлинности использует заданные учетные данные, параметры проверки подлинности и привязку канала.

public:
 virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::Security::Authentication::ExtendedProtection::ChannelBinding ^ binding, System::String ^ targetName, System::Net::Security::ProtectionLevel requiredProtectionLevel, System::Security::Principal::TokenImpersonationLevel allowedImpersonationLevel);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding? binding, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding binding, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, binding As ChannelBinding, targetName As String, requiredProtectionLevel As ProtectionLevel, allowedImpersonationLevel As TokenImpersonationLevel)

Параметры

credential
NetworkCredential

Учетные данные NetworkCredential, используемые для установления идентификации клиента.

binding
ChannelBinding

Объект ChannelBinding, который используется для расширенной защиты.

targetName
String

Имя участника-службы (SPN), уникально определяющее сервер, подлинность которого проверяется.

requiredProtectionLevel
ProtectionLevel

Одно из значений перечисления ProtectionLevel, указывающее службы безопасности для потока.

allowedImpersonationLevel
TokenImpersonationLevel

Одно из значений перечисления TokenImpersonationLevel, указывающее, как сервер может использовать учетные записи клиента для доступа к ресурсам.

Исключения

targetName имеет значение null.

-или-

credential имеет значение null.

allowedImpersonationLevel не является допустимым значением.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Сбой проверки подлинности. Этот объект можно использовать для повторной проверки подлинности.

Проверка подлинности уже выполнена.

-или-

Этот поток уже использовался ранее при попытке проверки подлинности со стороны сервера. Этот поток нельзя использовать для повторной проверки подлинности со стороны клиента.

Объект закрыт.

Комментарии

Используйте параметр для requiredProtectionLevel запроса служб безопасности данных, передаваемых с помощью потока, прошедшего проверку подлинности. Например, чтобы данные были зашифрованы и подписаны, укажите EncryptAndSign значение . Успешная проверка подлинности не гарантирует предоставление запрошенного ProtectionLevel . Необходимо проверка IsEncrypted свойства и IsSigned , чтобы определить, какие службы безопасности используются NegotiateStream.

Объект , используемый ChannelBinding для расширенной защиты, передаваемый этому методу в параметре binding , будет извлекаться приложением из TransportContext свойства в связанном SslStreamобъекте .

Если проверка подлинности завершается сбоем, вы получите или AuthenticationExceptionInvalidCredentialException. В этом случае можно повторить проверку подлинности с другими учетными данными.

См. также раздел

Применяется к