Bagikan melalui


NegotiateStream.AuthenticateAsClientAsync Metode

Definisi

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron.

Overload

AuthenticateAsClientAsync()

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron.

AuthenticateAsClientAsync(NetworkCredential, String)

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial klien yang ditentukan.

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial klien yang ditentukan dan pengikatan saluran.

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial dan opsi autentikasi yang ditentukan.

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

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial, opsi autentikasi, dan pengikatan saluran yang ditentukan.

AuthenticateAsClientAsync()

Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron.

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

Mengembalikan

Objek tugas yang mewakili operasi asinkron.

Pengecualian

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Objek ini telah ditutup.

Autentikasi telah terjadi.

-atau-

Aliran ini digunakan sebelumnya untuk mencoba autentikasi sebagai server. Anda tidak dapat menggunakan aliran untuk mencoba kembali autentikasi sebagai klien.

Keterangan

Autentikasi menggunakan DefaultCredentialsklien . Tidak ada Nama Prinsipal Layanan (SPN) yang ditentukan untuk server. Tingkat peniruan Identificationadalah , tingkat keamanan adalah EncryptAndSign, dan autentikasi bersama diminta. Kelas NegotiateStream akan membangun SPN yang digunakan untuk autentikasi bersama.

Ketika autentikasi berhasil, Anda harus memeriksa IsEncrypted properti dan IsSigned untuk menentukan layanan keamanan apa yang digunakan oleh NegotiateStream. IsMutuallyAuthenticated Periksa properti untuk menentukan apakah terjadi autentikasi timbul.

Jika autentikasi gagal, Anda menerima AuthenticationException atau InvalidCredentialException. Dalam hal ini, Anda dapat mencoba kembali autentikasi dengan kredensial yang berbeda.

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh AuthenticateAsClient().

Berlaku untuk

AuthenticateAsClientAsync(NetworkCredential, String)

Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial klien yang ditentukan.

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

NetworkCredential yang digunakan untuk menetapkan identitas klien.

targetName
String

Nama Prinsipal Layanan (SPN) yang secara unik mengidentifikasi server untuk diautentikasi.

Mengembalikan

Objek tugas yang mewakili operasi asinkron.

Pengecualian

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Objek ini telah ditutup.

Autentikasi telah terjadi.

-atau-

Aliran ini digunakan sebelumnya untuk mencoba autentikasi sebagai server. Anda tidak dapat menggunakan aliran untuk mencoba kembali autentikasi sebagai klien.

targetNameadalah null.

Keterangan

Tingkat peniruan Identificationadalah , tingkat keamanan adalah EncryptAndSign, dan autentikasi bersama diminta. Kelas NegotiateStream akan membangun SPN yang digunakan untuk autentikasi bersama.

Ketika autentikasi berhasil, Anda harus memeriksa IsEncrypted properti dan IsSigned untuk menentukan layanan keamanan apa yang digunakan oleh NegotiateStream. IsMutuallyAuthenticated Periksa properti untuk menentukan apakah terjadi autentikasi timbul.

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh AuthenticateAsClient(NetworkCredential, String).

Berlaku untuk

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial klien yang ditentukan dan pengikatan saluran.

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

NetworkCredential yang digunakan untuk menetapkan identitas klien.

binding
ChannelBinding

ChannelBinding yang digunakan untuk perlindungan yang diperpanjang.

targetName
String

Nama Prinsipal Layanan (SPN) yang secara unik mengidentifikasi server untuk diautentikasi.

Mengembalikan

Objek tugas yang mewakili operasi asinkron.

Pengecualian

targetNameadalah null.

-atau-

credentialadalah null.

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Autentikasi telah terjadi.

-atau-

Aliran ini digunakan sebelumnya untuk mencoba autentikasi sebagai server. Anda tidak dapat menggunakan aliran untuk mencoba kembali autentikasi sebagai klien.

Objek ini telah ditutup.

Keterangan

Tingkat peniruan Identificationadalah , tingkat keamanan adalah EncryptAndSign, dan autentikasi bersama diminta. Kelas NegotiateStream akan membangun SPN yang digunakan untuk autentikasi bersama.

yang ChannelBinding digunakan untuk perlindungan diperpanjang yang diteruskan ke metode ini dalam binding parameter akan diambil oleh aplikasi dari TransportContext properti pada yang terkait SslStream.

Ketika autentikasi berhasil, Anda harus memeriksa IsEncrypted properti dan IsSigned untuk menentukan layanan keamanan apa yang digunakan oleh NegotiateStream. IsMutuallyAuthenticated Periksa properti untuk menentukan apakah terjadi autentikasi timbul.

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh AuthenticateAsClient(NetworkCredential, ChannelBinding, String).

Lihat juga

Berlaku untuk

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial dan opsi autentikasi yang ditentukan.

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

NetworkCredential yang digunakan untuk menetapkan identitas klien.

targetName
String

Nama Perwakilan Layanan (SPN) yang secara unik mengidentifikasi server untuk diautentikasi.

requiredProtectionLevel
ProtectionLevel

Salah ProtectionLevel satu nilai, menunjukkan layanan keamanan untuk aliran.

allowedImpersonationLevel
TokenImpersonationLevel

Salah TokenImpersonationLevel satu nilai, menunjukkan bagaimana server dapat menggunakan kredensial klien untuk mengakses sumber daya.

Mengembalikan

Objek tugas yang mewakili operasi asinkron.

Pengecualian

allowedImpersonationLevel bukan nilai yang valid.

targetName adalah null.

Autentikasi gagal. Anda bisa menggunakan objek ini untuk mencoba kembali otentikasi.

Autentikasi gagal. Anda dapat menggunakan objek ini untuk mencoba kembali autentikasi.

Objek ini telah ditutup.

Autentikasi telah terjadi.

-atau-

Aliran ini digunakan sebelumnya untuk mencoba autentikasi sebagai server. Anda tidak dapat menggunakan aliran untuk mencoba kembali autentikasi sebagai klien.

Keterangan

requiredProtectionLevel Gunakan parameter untuk meminta layanan keamanan untuk data yang dikirimkan menggunakan aliran yang diautentikasi. Misalnya, agar data dienkripsi dan ditandatangani, tentukan nilainya EncryptAndSign . Autentikasi yang berhasil tidak menjamin bahwa yang diminta ProtectionLevel telah diberikan. Anda harus memeriksa IsEncrypted properti dan IsSigned untuk menentukan layanan keamanan apa yang digunakan oleh NegotiateStream.

Jika autentikasi gagal, Anda menerima AuthenticationException atau InvalidCredentialException. Dalam hal ini, Anda dapat mencoba kembali autentikasi dengan kredensial yang berbeda.

Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel).

Berlaku untuk

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

Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs
Sumber:
NegotiateStream.cs

Dipanggil oleh klien untuk mengautentikasi klien, dan secara opsional server, dalam koneksi server klien sebagai operasi asinkron. Proses autentikasi menggunakan kredensial, opsi autentikasi, dan pengikatan saluran yang ditentukan.

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

NetworkCredential yang digunakan untuk menetapkan identitas klien.

binding
ChannelBinding

ChannelBinding yang digunakan untuk perlindungan yang diperpanjang.

targetName
String

Nama Perwakilan Layanan (SPN) yang secara unik mengidentifikasi server untuk diautentikasi.

requiredProtectionLevel
ProtectionLevel

Salah ProtectionLevel satu nilai, menunjukkan layanan keamanan untuk aliran.

allowedImpersonationLevel
TokenImpersonationLevel

Salah TokenImpersonationLevel satu nilai, menunjukkan bagaimana server dapat menggunakan kredensial klien untuk mengakses sumber daya.

Mengembalikan

Objek tugas yang mewakili operasi asinkron.

Pengecualian

targetNameadalah null.

-atau-

credentialadalah null.

allowedImpersonationLevel bukan nilai yang valid.

Autentikasi gagal. Anda dapat menggunakan objek ini untuk mencoba kembali autentikasi.

Autentikasi gagal. Anda dapat menggunakan objek ini untuk mencoba kembali autentikasi.

Autentikasi telah terjadi.

-atau-

Aliran ini digunakan sebelumnya untuk mencoba autentikasi sebagai server. Anda tidak dapat menggunakan aliran untuk mencoba kembali autentikasi sebagai klien.

Objek ini telah ditutup.

Keterangan

requiredProtectionLevel Gunakan parameter untuk meminta layanan keamanan untuk data yang dikirimkan menggunakan aliran yang diautentikasi. Misalnya, agar data dienkripsi dan ditandatangani, tentukan nilainya EncryptAndSign . Autentikasi yang berhasil tidak menjamin bahwa yang diminta ProtectionLevel telah diberikan. Anda harus memeriksa IsEncrypted properti dan IsSigned untuk menentukan layanan keamanan apa yang digunakan oleh NegotiateStream.

yang ChannelBinding digunakan untuk perlindungan yang diperluas yang diteruskan ke metode ini dalam binding parameter akan diambil oleh aplikasi dari TransportContext properti pada yang terkait SslStream.

Jika autentikasi gagal, Anda menerima AuthenticationException atau InvalidCredentialException. Dalam hal ini, Anda dapat mencoba kembali autentikasi dengan kredensial yang berbeda.

Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel).

Lihat juga

Berlaku untuk