NegotiateStream.AuthenticateAsClientAsync Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona.
Sobrecargas
| Name | Description |
|---|---|
| AuthenticateAsClientAsync() |
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. |
| AuthenticateAsClientAsync(NetworkCredential, String) |
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza a credencial do cliente especificada. |
| AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String) |
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza a credencial do cliente especificada e a ligação ao canal. |
| AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel) |
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza as credenciais e opções de autenticação especificadas. |
| AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel) |
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza a credencial especificada, as opções de autenticação e a ligação de canal. |
AuthenticateAsClientAsync()
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação 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
Devoluções
O objeto tarefa que representa a operação assíncrona.
Exceções
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
Este objeto foi encerrado.
A autenticação já ocorreu.
-ou-
Este fluxo era usado anteriormente para tentar autenticação como servidor. Não podes usar o stream para tentar autenticação novamente como cliente.
Observações
A autenticação utiliza o DefaultCredentials. Não é especificado nenhum Nome Principal de Serviço (SPN) para o servidor. O nível de personificação é Identification, o nível de segurança é EncryptAndSign, e solicita-se autenticação mútua. A NegotiateStream classe irá construir o SPN usado para autenticação mútua.
Quando a autenticação for bem-sucedida, deve verificar as IsEncrypted propriedades e IsSigned para determinar que serviços de segurança são usados pelo NegotiateStream. Verifique a IsMutuallyAuthenticated propriedade para determinar se ocorreu autenticação mútua.
Se a autenticação falhar, recebe um AuthenticationException ou um InvalidCredentialException. Neste caso, pode tentar a autenticação novamente com uma credencial diferente.
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por AuthenticateAsClient().
Aplica-se a
AuthenticateAsClientAsync(NetworkCredential, String)
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza a credencial do 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 Nome Principal do Serviço (SPN) que identifica de forma única o servidor a autenticar.
Devoluções
O objeto tarefa que representa a operação assíncrona.
Exceções
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
Este objeto foi encerrado.
A autenticação já ocorreu.
-ou-
Este fluxo era usado anteriormente para tentar autenticação como servidor. Não podes usar o stream para tentar autenticação novamente como cliente.
targetName é null.
Observações
O nível de personificação é Identification, o nível de segurança é EncryptAndSign, e solicita-se autenticação mútua. A NegotiateStream classe irá construir o SPN usado para autenticação mútua.
Quando a autenticação for bem-sucedida, deve verificar as IsEncrypted propriedades e IsSigned para determinar que serviços de segurança são usados pelo NegotiateStream. Verifique a IsMutuallyAuthenticated propriedade para determinar se ocorreu autenticação mútua.
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por AuthenticateAsClient(NetworkCredential, String).
Aplica-se a
AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza a credencial do cliente especificada e a ligação ao 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);
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 prolongada.
- targetName
- String
O Nome Principal do Serviço (SPN) que identifica de forma única o servidor a autenticar.
Devoluções
O objeto tarefa que representa a operação assíncrona.
Exceções
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação já ocorreu.
-ou-
Este fluxo era usado anteriormente para tentar autenticação como servidor. Não podes usar o stream para tentar autenticação novamente como cliente.
Este objeto foi encerrado.
Observações
O nível de personificação é Identification, o nível de segurança é EncryptAndSign, e solicita-se autenticação mútua. A NegotiateStream classe irá construir o SPN usado para autenticação mútua.
O ChannelBinding usado para proteção estendida que é passado a este método no binding parâmetro seria recuperado por uma aplicação a partir da TransportContext propriedade na associada SslStream.
Quando a autenticação for bem-sucedida, deve verificar as IsEncrypted propriedades e IsSigned para determinar que serviços de segurança são usados pelo NegotiateStream. Verifique a IsMutuallyAuthenticated propriedade para determinar se ocorreu autenticação mútua.
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por AuthenticateAsClient(NetworkCredential, ChannelBinding, String).
Ver também
Aplica-se a
AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza as credenciais e 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 Nome Principal do Serviço (SPN) que identifica de forma única o servidor a autenticar.
- requiredProtectionLevel
- ProtectionLevel
Um dos ProtectionLevel valores, indicando os serviços de segurança do fluxo.
- allowedImpersonationLevel
- TokenImpersonationLevel
Um dos TokenImpersonationLevel valores, indica como o servidor pode usar as credenciais do cliente para aceder a recursos.
Devoluções
O objeto tarefa que representa a operação assíncrona.
Exceções
allowedImpersonationLevel não é um valor válido.
targetName é null.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
Este objeto foi encerrado.
A autenticação já ocorreu.
-ou-
Este fluxo era usado anteriormente para tentar autenticação como servidor. Não podes usar o stream para tentar autenticação novamente como cliente.
Observações
Use o requiredProtectionLevel parâmetro para solicitar serviços de segurança para os dados transmitidos através do fluxo autenticado. Por exemplo, para que os dados sejam encriptados e assinados, especifique o EncryptAndSign valor. A autenticação bem-sucedida não garante que o pedido ProtectionLevel tenha sido concedido. Deve verificar as IsEncrypted e IsSigned propriedades para determinar que serviços de segurança são utilizados pelo NegotiateStream.
Se a autenticação falhar, recebe um AuthenticationException ou um InvalidCredentialException. Neste caso, pode tentar a autenticação novamente com uma credencial diferente.
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel).
Aplica-se a
AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel)
Chamada pelos clientes para autenticar o cliente, e opcionalmente o servidor, numa ligação cliente-servidor como uma operação assíncrona. O processo de autenticação utiliza a credencial especificada, as opções de autenticação e a ligaçã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);
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 prolongada.
- targetName
- String
O Nome Principal do Serviço (SPN) que identifica de forma única o servidor a autenticar.
- requiredProtectionLevel
- ProtectionLevel
Um dos ProtectionLevel valores, indicando os serviços de segurança do fluxo.
- allowedImpersonationLevel
- TokenImpersonationLevel
Um dos TokenImpersonationLevel valores, indica como o servidor pode usar as credenciais do cliente para aceder a recursos.
Devoluções
O objeto tarefa que representa a operação assíncrona.
Exceções
allowedImpersonationLevel não é um valor válido.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação falhou. Pode usar este objeto para tentar novamente a autenticação.
A autenticação já ocorreu.
-ou-
Este fluxo era usado anteriormente para tentar autenticação como servidor. Não podes usar o stream para tentar autenticação novamente como cliente.
Este objeto foi encerrado.
Observações
Use o requiredProtectionLevel parâmetro para solicitar serviços de segurança para os dados transmitidos através do fluxo autenticado. Por exemplo, para que os dados sejam encriptados e assinados, especifique o EncryptAndSign valor. A autenticação bem-sucedida não garante que o pedido ProtectionLevel tenha sido concedido. Deve verificar as IsEncrypted e IsSigned propriedades para determinar que serviços de segurança são utilizados pelo NegotiateStream.
O ChannelBinding usado para proteção estendida que é passado a este método no binding parâmetro seria recuperado por uma aplicação a partir da TransportContext propriedade na associada SslStream.
Se a autenticação falhar, recebe um AuthenticationException ou um InvalidCredentialException. Neste caso, pode tentar a autenticação novamente com uma credencial diferente.
Este método armazena na tarefa que devolve todas as exceções de não-utilização que o equivalente síncrono do método pode lançar. Se uma exceção for armazenada na tarefa devolvida, essa exceção será lançada quando a tarefa for aguardada. As exceções de uso, como ArgumentException, ainda são lançadas de forma síncrona. Para as exceções armazenadas, veja as exceções lançadas por AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel).