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()

Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs

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

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 die des Clients DefaultCredentials. Für den Server wird kein Dienstprinzipalname (Service Principal Name, SPN) angegeben. Die Identitätswechselebene ist Identification, die Sicherheitsstufe ist EncryptAndSign, 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 IsEncrypted Eigenschaften und IsSigned überprüfen, um zu ermitteln, welche Sicherheitsdienste von NegotiateStreamverwendet werden. Überprüfen Sie die IsMutuallyAuthenticated -Eigenschaft, um zu ermitteln, ob eine gegenseitige Authentifizierung erfolgt ist.

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

Diese Methode speichert in der Aufgabe, die alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen wie ArgumentExceptionwerden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter ausnahmen, die von ausgelöst werden AuthenticateAsClient().

Gilt für:

AuthenticateAsClientAsync(NetworkCredential, String)

Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs

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

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ätswechselebene ist Identification, die Sicherheitsstufe ist EncryptAndSign, 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 IsEncrypted Eigenschaften und IsSigned überprüfen, um zu ermitteln, welche Sicherheitsdienste von NegotiateStreamverwendet werden. Überprüfen Sie die IsMutuallyAuthenticated -Eigenschaft, um zu ermitteln, ob eine gegenseitige Authentifizierung erfolgt ist.

Diese Methode speichert in der Aufgabe, die alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen wie ArgumentExceptionwerden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter ausnahmen, die von ausgelöst werden AuthenticateAsClient(NetworkCredential, String).

Gilt für:

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs

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

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ätswechselebene ist Identification, die Sicherheitsstufe ist EncryptAndSign, 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 verwendet wird, der binding im -Parameter an diese Methode übergeben wird, wird von einer Anwendung aus der TransportContext -Eigenschaft des zugeordneten SslStreamabgerufen.

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

Diese Methode speichert in der Aufgabe, die alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen wie ArgumentExceptionwerden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter ausnahmen, die von ausgelöst werden AuthenticateAsClient(NetworkCredential, ChannelBinding, String).

Weitere Informationen

Gilt für:

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs

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

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 mit dem authentifizierten Stream übertragen werden. Geben Sie beispielsweise den EncryptAndSign Wert an, um die Daten verschlüsselt und signiert zu lassen. Eine erfolgreiche Authentifizierung garantiert nicht, dass das angeforderte ProtectionLevel gewährt wurde. Sie müssen die IsEncrypted Eigenschaften und IsSigned überprüfen, um zu ermitteln, welche Sicherheitsdienste von NegotiateStreamverwendet werden.

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

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)Ausnahmen.

Gilt für:

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

Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs
Quelle:
NegotiateStream.cs

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

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 mit dem authentifizierten Stream übertragen werden. Geben Sie beispielsweise den EncryptAndSign Wert an, um die Daten verschlüsselt und signiert zu lassen. Eine erfolgreiche Authentifizierung garantiert nicht, dass das angeforderte ProtectionLevel gewährt wurde. Sie müssen die IsEncrypted Eigenschaften und IsSigned überprüfen, um zu ermitteln, welche Sicherheitsdienste von NegotiateStreamverwendet werden.

Die ChannelBinding für den erweiterten Schutz verwendete, die an diese Methode im binding -Parameter übergeben wird, wird von einer Anwendung aus der TransportContext -Eigenschaft für die zugeordnete SslStreamabgerufen.

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

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel)Ausnahmen.

Weitere Informationen

Gilt für: