NegotiateStream.AuthenticateAsClientAsync Methode

Definition

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen.

Überlädt

AuthenticateAsClientAsync()

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen.

AuthenticateAsClientAsync(NetworkCredential, String)

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Für den Authentifizierungsprozess werden die angegebenen Clientanmeldeinformationen verwendet.

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Für den Authentifizierungsprozess werden die angegebenen Clientanmeldeinformationen und die Channelbindung verwendet.

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Beim Authentifizierungsprozess werden die angegebenen Anmeldeinformationen und Authentifizierungsoptionen verwendet.

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

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Für den Authentifizierungsprozess werden die angegebenen Anmeldeinformationen, Authentifizierungsoptionen und die Channelbindung verwendet.

AuthenticateAsClientAsync()

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen.

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

Gibt zurück

Task

Das Aufgabenobjekt, das den asynchronen Vorgang darstellt.

Ausnahmen

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Dieses Objekt wurde geschlossen.

Die Authentifizierung ist bereits erfolgt.

  • oder -

Dieser Stream wurde zuvor für einen Authentifizierungsversuch als Server verwendet. Sie können den Stream nicht verwenden, um den Authentifizierungsversuch als Client zu wiederholen.

Hinweise

Die Authentifizierung verwendet den Client DefaultCredentials. Kein Dienstprinzipalname (SPN) wird für den Server angegeben. Die Identitätswechselstufe ist , die Sicherheitsstufe EncryptAndSignist Identification, und die gegenseitige Authentifizierung wird angefordert. Die NegotiateStream Klasse erstellt den SPN, der für die gegenseitige Authentifizierung verwendet wird.

Wenn die Authentifizierung erfolgreich ist, müssen Sie die und IsSigned die IsEncrypted Eigenschaften überprüfen, um zu ermitteln, welche Sicherheitsdienste von dem NegotiateStreamverwendet werden. Überprüfen Sie die Eigenschaft, um festzustellen, ob die IsMutuallyAuthenticated gegenseitige Authentifizierung aufgetreten ist.

Wenn die Authentifizierung fehlschlägt, erhalten Sie eine oder eine AuthenticationException InvalidCredentialException. In diesem Fall können Sie die Authentifizierung mit einer anderen Anmeldeinformationen wiederholen.

Gilt für

AuthenticateAsClientAsync(NetworkCredential, String)

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Für den Authentifizierungsprozess werden die angegebenen Clientanmeldeinformationen verwendet.

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

Parameter

credential
NetworkCredential

Die NetworkCredential zum Feststellen der Clientidentität.

targetName
String

Der SPN, der den zu authentifizierenden Server eindeutig identifiziert.

Gibt zurück

Task

Das Aufgabenobjekt, das den asynchronen Vorgang darstellt.

Ausnahmen

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Dieses Objekt wurde geschlossen.

Die Authentifizierung ist bereits erfolgt.

  • oder -

Dieser Stream wurde zuvor für einen Authentifizierungsversuch als Server verwendet. Sie können den Stream nicht verwenden, um den Authentifizierungsversuch als Client zu wiederholen.

targetName ist null.

Hinweise

Die Identitätswechselstufe ist , die Sicherheitsstufe EncryptAndSignist Identification, und die gegenseitige Authentifizierung wird angefordert. Die NegotiateStream Klasse erstellt den SPN, der für die gegenseitige Authentifizierung verwendet wird.

Wenn die Authentifizierung erfolgreich ist, müssen Sie die und IsSigned die IsEncrypted Eigenschaften überprüfen, um zu ermitteln, welche Sicherheitsdienste von dem NegotiateStreamverwendet werden. Überprüfen Sie die Eigenschaft, um festzustellen, ob die IsMutuallyAuthenticated gegenseitige Authentifizierung aufgetreten ist.

Gilt für

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Für den Authentifizierungsprozess werden die angegebenen Clientanmeldeinformationen und die Channelbindung verwendet.

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

Parameter

credential
NetworkCredential

Die NetworkCredential zum Feststellen der Clientidentität.

binding
ChannelBinding

Das für erweiterten Schutz verwendete ChannelBinding.

targetName
String

Der SPN, der den zu authentifizierenden Server eindeutig identifiziert.

Gibt zurück

Task

Das Aufgabenobjekt, das den asynchronen Vorgang darstellt.

Ausnahmen

targetName ist null.

- oder - credential ist null.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Die Authentifizierung ist bereits erfolgt.

  • oder -

Dieser Stream wurde zuvor für einen Authentifizierungsversuch als Server verwendet. Sie können den Stream nicht verwenden, um den Authentifizierungsversuch als Client zu wiederholen.

Dieses Objekt wurde geschlossen.

Hinweise

Die Identitätswechselstufe ist , die Sicherheitsstufe EncryptAndSignist Identification, und die gegenseitige Authentifizierung wird angefordert. Die NegotiateStream Klasse erstellt den SPN, der für die gegenseitige Authentifizierung verwendet wird.

Der ChannelBinding für den erweiterten Schutz verwendete, der an diese Methode im Parameter übergeben wird, wird von einer Anwendung aus TransportContext der Eigenschaft auf dem binding zugehörigen SslStreamabgerufen.

Wenn die Authentifizierung erfolgreich ist, müssen Sie die und IsSigned die IsEncrypted Eigenschaften überprüfen, um zu ermitteln, welche Sicherheitsdienste von dem NegotiateStreamverwendet werden. Überprüfen Sie die IsMutuallyAuthenticated Eigenschaft, um festzustellen, ob die gegenseitige Authentifizierung aufgetreten ist.

Siehe auch

Gilt für

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Beim Authentifizierungsprozess werden die angegebenen Anmeldeinformationen und Authentifizierungsoptionen verwendet.

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

Parameter

credential
NetworkCredential

Die NetworkCredential zum Feststellen der Clientidentität.

targetName
String

Der SPN, der den zu authentifizierenden Server eindeutig identifiziert.

requiredProtectionLevel
ProtectionLevel

Einer der ProtectionLevel-Werte, der die Sicherheitsdienste für den Stream angibt.

allowedImpersonationLevel
TokenImpersonationLevel

Einer der TokenImpersonationLevel-Werte, der angibt, wie der Server mit den Clientanmeldeinformationen auf Ressourcen zugreifen kann.

Gibt zurück

Task

Das Aufgabenobjekt, das den asynchronen Vorgang darstellt.

Ausnahmen

"allowedImpersonationLevel" ist kein gültiger Wert.

targetName ist NULL.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Dieses Objekt wurde geschlossen.

Die Authentifizierung ist bereits erfolgt.

  • oder -

Dieser Stream wurde zuvor für einen Authentifizierungsversuch als Server verwendet. Sie können den Stream nicht verwenden, um den Authentifizierungsversuch als Client zu wiederholen.

Hinweise

Verwenden Sie den requiredProtectionLevel Parameter, um Sicherheitsdienste für Daten anzufordern, die mithilfe des authentifizierten Datenstroms übertragen werden. Um beispielsweise die Daten verschlüsselt und signiert zu haben, geben Sie den EncryptAndSign Wert an. Die erfolgreiche Authentifizierung garantiert nicht, dass die angeforderte Authentifizierung ProtectionLevel erteilt wurde. Sie müssen die und IsSigned die IsEncrypted Eigenschaften überprüfen, um zu ermitteln, welche Sicherheitsdienste von der NegotiateStream.

Wenn die Authentifizierung fehlschlägt, erhalten Sie eine oder eine AuthenticationException InvalidCredentialException. In diesem Fall können Sie die Authentifizierung mit einer anderen Anmeldeinformationen wiederholen.

Gilt für

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

Wird von Clients zum Authentifizieren des Clients und optional auch des Servers aufgerufen, bei einer Client-/Serververbindung als asynchroner Vorgang aufgerufen. Für den Authentifizierungsprozess werden die angegebenen Anmeldeinformationen, Authentifizierungsoptionen und die Channelbindung verwendet.

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

Parameter

credential
NetworkCredential

Die NetworkCredential zum Feststellen der Clientidentität.

binding
ChannelBinding

Das für erweiterten Schutz verwendete ChannelBinding.

targetName
String

Der SPN, der den zu authentifizierenden Server eindeutig identifiziert.

requiredProtectionLevel
ProtectionLevel

Einer der ProtectionLevel-Werte, der die Sicherheitsdienste für den Stream angibt.

allowedImpersonationLevel
TokenImpersonationLevel

Einer der TokenImpersonationLevel-Werte, der angibt, wie der Server mit den Clientanmeldeinformationen auf Ressourcen zugreifen kann.

Gibt zurück

Task

Das Aufgabenobjekt, das den asynchronen Vorgang darstellt.

Ausnahmen

targetName ist null.

- oder - credential ist null.

"allowedImpersonationLevel" ist kein gültiger Wert.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Fehler bei der Authentifizierung. Sie können die Authentifizierung mithilfe dieses Objekts wiederholen.

Die Authentifizierung ist bereits erfolgt.

  • oder -

Dieser Stream wurde zuvor für einen Authentifizierungsversuch als Server verwendet. Sie können den Stream nicht verwenden, um den Authentifizierungsversuch als Client zu wiederholen.

Dieses Objekt wurde geschlossen.

Hinweise

Verwenden Sie den requiredProtectionLevel Parameter, um Sicherheitsdienste für Daten anzufordern, die mithilfe des authentifizierten Datenstroms übertragen werden. Um beispielsweise die Daten verschlüsselt und signiert zu haben, geben Sie den EncryptAndSign Wert an. Die erfolgreiche Authentifizierung garantiert nicht, dass die angeforderte Authentifizierung ProtectionLevel erteilt wurde. Sie müssen die und IsSigned die IsEncrypted Eigenschaften überprüfen, um zu ermitteln, welche Sicherheitsdienste von der NegotiateStream.

Der ChannelBinding für erweiterten Schutz verwendete, der an diese Methode im binding Parameter übergeben wird, wird von einer Anwendung aus TransportContext der Eigenschaft des zugeordneten SslStreamObjekts abgerufen.

Wenn die Authentifizierung fehlschlägt, erhalten Sie eine oder eine AuthenticationException InvalidCredentialException. In diesem Fall können Sie die Authentifizierung mit einer anderen Anmeldeinformationen wiederholen.

Siehe auch

Gilt für