NegotiateStream.AuthenticateAsClientAsync Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd.
Överlagringar
| Name | Description |
|---|---|
| AuthenticateAsClientAsync() |
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. |
| AuthenticateAsClientAsync(NetworkCredential, String) |
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder den angivna klientautentiseringsuppgiften. |
| AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String) |
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder den angivna klientautentiseringsuppgiften och kanalbindningen. |
| AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel) |
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder de angivna autentiseringsalternativen och autentiseringsalternativen. |
| AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel) |
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder de angivna autentiseringsalternativen, autentiseringsalternativen och kanalbindningen. |
AuthenticateAsClientAsync()
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd.
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
Returer
Aktivitetsobjektet som representerar den asynkrona åtgärden.
Undantag
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Det här objektet har stängts.
Autentiseringen har redan inträffat.
-eller-
Den här strömmen användes tidigare för att försöka autentisering som server. Du kan inte använda strömmen för att försöka autentisering igen som klient.
Kommentarer
Autentiseringen använder klientens DefaultCredentials. Inget SPN (Service Principal Name) har angetts för servern. Personifieringsnivån är Identification, säkerhetsnivån är EncryptAndSignoch ömsesidig autentisering begärs. Klassen NegotiateStream konstruerar det SPN som används för ömsesidig autentisering.
När autentiseringen IsEncrypted lyckas måste du kontrollera egenskaperna och IsSigned för att avgöra vilka säkerhetstjänster som används av NegotiateStream. Kontrollera egenskapen IsMutuallyAuthenticated för att avgöra om ömsesidig autentisering har inträffat.
Om autentiseringen misslyckas får du en AuthenticationException eller en InvalidCredentialException. I det här fallet kan du försöka autentiseringen igen med en annan autentiseringsuppgift.
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av AuthenticateAsClient().
Gäller för
AuthenticateAsClientAsync(NetworkCredential, String)
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder den angivna klientautentiseringsuppgiften.
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
Parametrar
- credential
- NetworkCredential
Det NetworkCredential som används för att fastställa klientens identitet.
- targetName
- String
Tjänstens huvudnamn (SPN) som unikt identifierar servern som ska autentiseras.
Returer
Aktivitetsobjektet som representerar den asynkrona åtgärden.
Undantag
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Det här objektet har stängts.
Autentiseringen har redan inträffat.
-eller-
Den här strömmen användes tidigare för att försöka autentisering som server. Du kan inte använda strömmen för att försöka autentisering igen som klient.
targetName är null.
Kommentarer
Personifieringsnivån är Identification, säkerhetsnivån är EncryptAndSignoch ömsesidig autentisering begärs. Klassen NegotiateStream konstruerar det SPN som används för ömsesidig autentisering.
När autentiseringen IsEncrypted lyckas måste du kontrollera egenskaperna och IsSigned för att avgöra vilka säkerhetstjänster som används av NegotiateStream. Kontrollera egenskapen IsMutuallyAuthenticated för att avgöra om ömsesidig autentisering har inträffat.
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av AuthenticateAsClient(NetworkCredential, String).
Gäller för
AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder den angivna klientautentiseringsuppgiften och kanalbindningen.
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
Parametrar
- credential
- NetworkCredential
Det NetworkCredential som används för att fastställa klientens identitet.
- binding
- ChannelBinding
Det ChannelBinding som används för utökat skydd.
- targetName
- String
Tjänstens huvudnamn (SPN) som unikt identifierar servern som ska autentiseras.
Returer
Aktivitetsobjektet som representerar den asynkrona åtgärden.
Undantag
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen har redan inträffat.
-eller-
Den här strömmen användes tidigare för att försöka autentisering som server. Du kan inte använda strömmen för att försöka autentisering igen som klient.
Det här objektet har stängts.
Kommentarer
Personifieringsnivån är Identification, säkerhetsnivån är EncryptAndSignoch ömsesidig autentisering begärs. Klassen NegotiateStream konstruerar det SPN som används för ömsesidig autentisering.
Den ChannelBinding som används för utökat skydd som skickas till den här metoden i parametern binding hämtas av ett program från TransportContext egenskapen på den associerade SslStream.
När autentiseringen IsEncrypted lyckas måste du kontrollera egenskaperna och IsSigned för att avgöra vilka säkerhetstjänster som används av NegotiateStream. Kontrollera egenskapen IsMutuallyAuthenticated för att avgöra om ömsesidig autentisering har inträffat.
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av AuthenticateAsClient(NetworkCredential, ChannelBinding, String).
Se även
Gäller för
AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder de angivna autentiseringsalternativen och autentiseringsalternativen.
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
Parametrar
- credential
- NetworkCredential
Det NetworkCredential som används för att fastställa klientens identitet.
- targetName
- String
Tjänstens huvudnamn (SPN) som unikt identifierar servern som ska autentiseras.
- requiredProtectionLevel
- ProtectionLevel
Ett av ProtectionLevel värdena som anger säkerhetstjänsterna för dataströmmen.
- allowedImpersonationLevel
- TokenImpersonationLevel
Ett av TokenImpersonationLevel värdena som anger hur servern kan använda klientens autentiseringsuppgifter för att komma åt resurser.
Returer
Aktivitetsobjektet som representerar den asynkrona åtgärden.
Undantag
allowedImpersonationLevel är inte ett giltigt värde.
targetName är null.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Det här objektet har stängts.
Autentiseringen har redan inträffat.
-eller-
Den här strömmen användes tidigare för att försöka autentisering som server. Du kan inte använda strömmen för att försöka autentisering igen som klient.
Kommentarer
Använd parametern requiredProtectionLevel för att begära säkerhetstjänster för data som överförs med hjälp av den autentiserade dataströmmen. Om du till exempel vill att data ska krypteras och signeras anger du EncryptAndSign värdet. Lyckad autentisering garanterar inte att den begärda ProtectionLevel har beviljats. Du måste kontrollera IsEncrypted egenskaperna och IsSigned för att avgöra vilka säkerhetstjänster som används av NegotiateStream.
Om autentiseringen misslyckas får du en AuthenticationException eller en InvalidCredentialException. I det här fallet kan du försöka autentiseringen igen med en annan autentiseringsuppgift.
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel).
Gäller för
AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel)
Anropas av klienter för att autentisera klienten, och eventuellt servern, i en klient-server-anslutning som en asynkron åtgärd. Autentiseringsprocessen använder de angivna autentiseringsalternativen, autentiseringsalternativen och kanalbindningen.
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
Parametrar
- credential
- NetworkCredential
Det NetworkCredential som används för att fastställa klientens identitet.
- binding
- ChannelBinding
Det ChannelBinding som används för utökat skydd.
- targetName
- String
Tjänstens huvudnamn (SPN) som unikt identifierar servern som ska autentiseras.
- requiredProtectionLevel
- ProtectionLevel
Ett av ProtectionLevel värdena som anger säkerhetstjänsterna för dataströmmen.
- allowedImpersonationLevel
- TokenImpersonationLevel
Ett av TokenImpersonationLevel värdena som anger hur servern kan använda klientens autentiseringsuppgifter för att komma åt resurser.
Returer
Aktivitetsobjektet som representerar den asynkrona åtgärden.
Undantag
allowedImpersonationLevel är inte ett giltigt värde.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen misslyckades. Du kan använda det här objektet för att försöka autentiseringen igen.
Autentiseringen har redan inträffat.
-eller-
Den här strömmen användes tidigare för att försöka autentisering som server. Du kan inte använda strömmen för att försöka autentisering igen som klient.
Det här objektet har stängts.
Kommentarer
Använd parametern requiredProtectionLevel för att begära säkerhetstjänster för data som överförs med hjälp av den autentiserade dataströmmen. Om du till exempel vill att data ska krypteras och signeras anger du EncryptAndSign värdet. Lyckad autentisering garanterar inte att den begärda ProtectionLevel har beviljats. Du måste kontrollera IsEncrypted egenskaperna och IsSigned för att avgöra vilka säkerhetstjänster som används av NegotiateStream.
Den ChannelBinding som används för utökat skydd som skickas till den här metoden i parametern binding hämtas av ett program från TransportContext egenskapen på den associerade SslStream.
Om autentiseringen misslyckas får du en AuthenticationException eller en InvalidCredentialException. I det här fallet kan du försöka autentiseringen igen med en annan autentiseringsuppgift.
Den här metoden lagrar i aktiviteten som returnerar alla undantag som inte används som metodens synkrona motsvarighet kan utlösa. Om ett undantag lagras i den returnerade aktiviteten utlöses undantaget när aktiviteten väntar. Användningsfel, till exempel ArgumentException, genereras fortfarande synkront. De lagrade undantagen finns i undantagen som genereras av AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel).