Partilhar via


NegotiateStream.AuthenticateAsClientAsync Método

Definição

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona.

Sobrecargas

AuthenticateAsClientAsync()

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona.

AuthenticateAsClientAsync(NetworkCredential, String)

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa a credencial de cliente especificada.

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa a credencial do cliente especificada e a associação de canal.

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa as credenciais e as opções de autenticação especificadas.

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

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa as credenciais especificadas, as opções de autenticação e a associação de canal.

AuthenticateAsClientAsync()

Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona.

public:
 virtual System::Threading::Tasks::Task ^ AuthenticateAsClientAsync();
public virtual System.Threading.Tasks.Task AuthenticateAsClientAsync ();
abstract member AuthenticateAsClientAsync : unit -> System.Threading.Tasks.Task
override this.AuthenticateAsClientAsync : unit -> System.Threading.Tasks.Task
Public Overridable Function AuthenticateAsClientAsync () As Task

Retornos

O objeto de tarefa que representa a operação assíncrona.

Exceções

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

Este objeto foi fechado.

A autenticação já ocorreu.

- ou -

Este fluxo foi usado anteriormente para tentar realizar autenticação como o servidor. Você não pode usar o fluxo para tentar novamente a autenticação como cliente.

Comentários

A autenticação usa o do DefaultCredentialscliente. Nenhum SPN (Nome da Entidade de Serviço) é especificado para o servidor. O nível de representação é Identification, o nível de segurança é EncryptAndSigne a autenticação mútua é solicitada. A NegotiateStream classe construirá o SPN usado para autenticação mútua.

Quando a autenticação for bem-sucedida, você deverá marcar as IsEncrypted propriedades e IsSigned para determinar quais serviços de segurança são usados pelo NegotiateStream. Verifique a IsMutuallyAuthenticated propriedade para determinar se a autenticação mútua ocorreu.

Se a autenticação falhar, você receberá um AuthenticationException ou um InvalidCredentialException. Nesse caso, você pode repetir a autenticação com uma credencial diferente.

Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por AuthenticateAsClient().

Aplica-se a

AuthenticateAsClientAsync(NetworkCredential, String)

Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa a credencial de cliente especificada.

public:
 virtual System::Threading::Tasks::Task ^ AuthenticateAsClientAsync(System::Net::NetworkCredential ^ credential, System::String ^ targetName);
public virtual System.Threading.Tasks.Task AuthenticateAsClientAsync (System.Net.NetworkCredential credential, string targetName);
abstract member AuthenticateAsClientAsync : System.Net.NetworkCredential * string -> System.Threading.Tasks.Task
override this.AuthenticateAsClientAsync : System.Net.NetworkCredential * string -> System.Threading.Tasks.Task
Public Overridable Function AuthenticateAsClientAsync (credential As NetworkCredential, targetName As String) As Task

Parâmetros

credential
NetworkCredential

O NetworkCredential que é usado para estabelecer a identidade do cliente.

targetName
String

O SPN (nome da entidade de serviço) que identifica exclusivamente o servidor a autenticar.

Retornos

O objeto de tarefa que representa a operação assíncrona.

Exceções

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

Este objeto foi fechado.

A autenticação já ocorreu.

- ou -

Este fluxo foi usado anteriormente para tentar realizar autenticação como o servidor. Você não pode usar o fluxo para tentar novamente a autenticação como cliente.

targetName é null.

Comentários

O nível de representação é Identification, o nível de segurança é EncryptAndSigne a autenticação mútua é solicitada. A NegotiateStream classe construirá o SPN usado para autenticação mútua.

Quando a autenticação for bem-sucedida, você deverá marcar as IsEncrypted propriedades e IsSigned para determinar quais serviços de segurança são usados pelo NegotiateStream. Verifique a IsMutuallyAuthenticated propriedade para determinar se a autenticação mútua ocorreu.

Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por AuthenticateAsClient(NetworkCredential, String).

Aplica-se a

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa a credencial do cliente especificada e a associação de canal.

public:
 virtual System::Threading::Tasks::Task ^ AuthenticateAsClientAsync(System::Net::NetworkCredential ^ credential, System::Security::Authentication::ExtendedProtection::ChannelBinding ^ binding, System::String ^ targetName);
public virtual System.Threading.Tasks.Task AuthenticateAsClientAsync (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding? binding, string targetName);
public virtual System.Threading.Tasks.Task AuthenticateAsClientAsync (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding binding, string targetName);
abstract member AuthenticateAsClientAsync : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string -> System.Threading.Tasks.Task
override this.AuthenticateAsClientAsync : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string -> System.Threading.Tasks.Task
Public Overridable Function AuthenticateAsClientAsync (credential As NetworkCredential, binding As ChannelBinding, targetName As String) As Task

Parâmetros

credential
NetworkCredential

O NetworkCredential que é usado para estabelecer a identidade do cliente.

binding
ChannelBinding

O ChannelBinding que é usado para proteção estendida.

targetName
String

O SPN (nome da entidade de serviço) que identifica exclusivamente o servidor a autenticar.

Retornos

O objeto de tarefa que representa a operação assíncrona.

Exceções

targetName é null.

- ou -

credential é null.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação já ocorreu.

- ou -

Este fluxo foi usado anteriormente para tentar realizar autenticação como o servidor. Você não pode usar o fluxo para tentar novamente a autenticação como cliente.

Este objeto foi fechado.

Comentários

O nível de representação é Identification, o nível de segurança é EncryptAndSigne a autenticação mútua é solicitada. A NegotiateStream classe construirá o SPN usado para autenticação mútua.

O ChannelBinding usado para proteção estendida que é passado para esse método no binding parâmetro seria recuperado por um aplicativo da TransportContext propriedade no associado SslStream.

Quando a autenticação for bem-sucedida, você deverá marcar as IsEncrypted propriedades e IsSigned para determinar quais serviços de segurança são usados pelo NegotiateStream. Verifique a IsMutuallyAuthenticated propriedade para determinar se a autenticação mútua ocorreu.

Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por AuthenticateAsClient(NetworkCredential, ChannelBinding, String).

Confira também

Aplica-se a

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa as credenciais e as opções de autenticação especificadas.

public:
 virtual System::Threading::Tasks::Task ^ AuthenticateAsClientAsync(System::Net::NetworkCredential ^ credential, System::String ^ targetName, System::Net::Security::ProtectionLevel requiredProtectionLevel, System::Security::Principal::TokenImpersonationLevel allowedImpersonationLevel);
public virtual System.Threading.Tasks.Task AuthenticateAsClientAsync (System.Net.NetworkCredential credential, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
abstract member AuthenticateAsClientAsync : System.Net.NetworkCredential * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> System.Threading.Tasks.Task
override this.AuthenticateAsClientAsync : System.Net.NetworkCredential * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> System.Threading.Tasks.Task
Public Overridable Function AuthenticateAsClientAsync (credential As NetworkCredential, targetName As String, requiredProtectionLevel As ProtectionLevel, allowedImpersonationLevel As TokenImpersonationLevel) As Task

Parâmetros

credential
NetworkCredential

O NetworkCredential que é usado para estabelecer a identidade do cliente.

targetName
String

O SPN (nome da entidade de serviço) que identifica exclusivamente o servidor a autenticar.

requiredProtectionLevel
ProtectionLevel

Um dos valores de ProtectionLevel, que indica os serviços de segurança para o fluxo.

allowedImpersonationLevel
TokenImpersonationLevel

Um dos valores de TokenImpersonationLevel, que indica como o servidor pode usar as credenciais do cliente para acessar recursos.

Retornos

O objeto de tarefa que representa a operação assíncrona.

Exceções

allowedImpersonationLevel não é um valor válido.

targetName é nulo.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

Este objeto foi fechado.

A autenticação já ocorreu.

- ou -

Este fluxo foi usado anteriormente para tentar realizar autenticação como o servidor. Você não pode usar o fluxo para tentar novamente a autenticação como cliente.

Comentários

Use o requiredProtectionLevel parâmetro para solicitar serviços de segurança para dados transmitidos usando o fluxo autenticado. Por exemplo, para que os dados sejam criptografados e assinados, especifique o EncryptAndSign valor . A autenticação bem-sucedida não garante que o solicitado ProtectionLevel tenha sido concedido. Você deve marcar as IsEncrypted propriedades e IsSigned para determinar quais serviços de segurança são usados pelo NegotiateStream.

Se a autenticação falhar, você receberá um AuthenticationException ou um InvalidCredentialException. Nesse caso, você pode repetir a autenticação com uma credencial diferente.

Esse método armazena na tarefa que retorna todas as exceções de não uso que a contraparte síncrona do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel).

Aplica-se a

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

Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs
Origem:
NegotiateStream.cs

Chamado por clientes para autenticar o cliente e, opcionalmente, o servidor, em uma conexão de cliente-servidor como uma operação assíncrona. O processo de autenticação usa as credenciais especificadas, as opções de autenticação e a associação de canal.

public:
 virtual System::Threading::Tasks::Task ^ AuthenticateAsClientAsync(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 System.Threading.Tasks.Task AuthenticateAsClientAsync (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding? binding, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
public virtual System.Threading.Tasks.Task AuthenticateAsClientAsync (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding binding, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
abstract member AuthenticateAsClientAsync : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> System.Threading.Tasks.Task
override this.AuthenticateAsClientAsync : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> System.Threading.Tasks.Task
Public Overridable Function AuthenticateAsClientAsync (credential As NetworkCredential, binding As ChannelBinding, targetName As String, requiredProtectionLevel As ProtectionLevel, allowedImpersonationLevel As TokenImpersonationLevel) As Task

Parâmetros

credential
NetworkCredential

O NetworkCredential que é usado para estabelecer a identidade do cliente.

binding
ChannelBinding

O ChannelBinding que é usado para proteção estendida.

targetName
String

O SPN (nome da entidade de serviço) que identifica exclusivamente o servidor a autenticar.

requiredProtectionLevel
ProtectionLevel

Um dos valores de ProtectionLevel, que indica os serviços de segurança para o fluxo.

allowedImpersonationLevel
TokenImpersonationLevel

Um dos valores de TokenImpersonationLevel, que indica como o servidor pode usar as credenciais do cliente para acessar recursos.

Retornos

O objeto de tarefa que representa a operação assíncrona.

Exceções

targetName é null.

- ou -

credential é null.

allowedImpersonationLevel não é um valor válido.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação falhou. Você pode usar esse objeto para tentar realizar a autenticação novamente.

A autenticação já ocorreu.

- ou -

Este fluxo foi usado anteriormente para tentar realizar autenticação como o servidor. Você não pode usar o fluxo para tentar novamente a autenticação como cliente.

Este objeto foi fechado.

Comentários

Use o requiredProtectionLevel parâmetro para solicitar serviços de segurança para dados transmitidos usando o fluxo autenticado. Por exemplo, para que os dados sejam criptografados e assinados, especifique o EncryptAndSign valor . A autenticação bem-sucedida não garante que o solicitado ProtectionLevel tenha sido concedido. Você deve marcar as IsEncrypted propriedades e IsSigned para determinar quais serviços de segurança são usados pelo NegotiateStream.

O ChannelBinding usado para proteção estendida que é passado para esse método no binding parâmetro seria recuperado por um aplicativo da TransportContext propriedade no associado SslStream.

Se a autenticação falhar, você receberá um AuthenticationException ou um InvalidCredentialException. Nesse caso, você pode repetir a autenticação com uma credencial diferente.

Esse método armazena na tarefa que retorna todas as exceções de não uso que a contraparte síncrona do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel).

Confira também

Aplica-se a