SslStream.BeginAuthenticateAsClient 方法

定義

開始作業以驗證用戶端與伺服器連接中的用戶端。

多載

BeginAuthenticateAsClient(String, AsyncCallback, Object)

由用戶端呼叫以開始非同步作業,驗證伺服器及 (選擇性地驗證) 用戶端。

BeginAuthenticateAsClient(String, X509CertificateCollection, Boolean, AsyncCallback, Object)

已由用戶端呼叫來開始非同步作業,以使用指定的憑證和系統預設安全性通訊協定來驗證伺服器和用戶端 (選擇性)。

BeginAuthenticateAsClient(String, X509CertificateCollection, SslProtocols, Boolean, AsyncCallback, Object)

由用戶端呼叫以開始非同步作業,使用指定的憑證和安全性通訊協定來驗證伺服器及 (選擇性地驗證) 用戶端。

備註

在進行驗證時,此方法的多載不會封鎖。 若要在等候驗證完成時封鎖,請使用其中 AuthenticateAsClient 一種方法。

BeginAuthenticateAsClient(String, AsyncCallback, Object)

來源:
SslStream.cs
來源:
SslStream.cs
來源:
SslStream.cs

由用戶端呼叫以開始非同步作業,驗證伺服器及 (選擇性地驗證) 用戶端。

public:
 virtual IAsyncResult ^ BeginAuthenticateAsClient(System::String ^ targetHost, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, AsyncCallback? asyncCallback, object? asyncState);
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, AsyncCallback asyncCallback, object asyncState);
abstract member BeginAuthenticateAsClient : string * AsyncCallback * obj -> IAsyncResult
override this.BeginAuthenticateAsClient : string * AsyncCallback * obj -> IAsyncResult
Public Overridable Function BeginAuthenticateAsClient (targetHost As String, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult

參數

targetHost
String

伺服器的名稱,共用這個 SslStream

asyncCallback
AsyncCallback

AsyncCallback 委派,會於驗證完成時參考要叫用的方法。

asyncState
Object

使用者定義物件,包含作業的相關資訊。 作業完成時會將這個物件傳遞給 asyncCallback 委派。

傳回

IAsyncResult 物件,表示非同步作業的狀態。

例外狀況

targetHostnull

驗證失敗,且此物件處於不穩定的狀態。

已經進行驗證。

-或-

先前已嘗試過使用此 SslStream 進行伺服器驗證。

-或-

驗證已在進行中。

此物件已關閉。

備註

從 .NET Framework 4.7 開始,此方法會使用 None 進行驗證,讓作業系統選擇最適用的通訊協定,並封鎖不安全的通訊協定。 在 .NET Framework 4.6 (和已安裝最新安全性修補程式的 .NET Framework 4.5) 中,允許的 TLS/SSL 通訊協定版本為 1.2、1.1 和 1.0 (除非您編輯 Windows 登錄來停用強式加密)。 驗證中不會使用任何用戶端憑證。 驗證期間不會檢查憑證撤銷清單。

指定的 targetHost 值必須符合伺服器憑證上的名稱。

非同步驗證作業必須藉由呼叫 EndAuthenticateAsClient 方法來完成。 一般而言,委派會叫用 asyncCallback 方法。

這個方法不會在作業完成時封鎖。 若要封鎖直到作業完成為止,請使用其中 AuthenticateAsClient 一個 方法多載。

如需使用非同步程式設計模型的詳細資訊,請參閱 以非同步方式呼叫同步方法

如果您收到 AuthenticationException ,則 SslStream 無法再使用。 您應該關閉此物件,並移除它的所有參考,以便垃圾收集行程可以收集它。

適用於

BeginAuthenticateAsClient(String, X509CertificateCollection, Boolean, AsyncCallback, Object)

來源:
SslStream.cs
來源:
SslStream.cs
來源:
SslStream.cs

已由用戶端呼叫來開始非同步作業,以使用指定的憑證和系統預設安全性通訊協定來驗證伺服器和用戶端 (選擇性)。

public:
 virtual IAsyncResult ^ BeginAuthenticateAsClient(System::String ^ targetHost, System::Security::Cryptography::X509Certificates::X509CertificateCollection ^ clientCertificates, bool checkCertificateRevocation, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection? clientCertificates, bool checkCertificateRevocation, AsyncCallback? asyncCallback, object? asyncState);
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection clientCertificates, bool checkCertificateRevocation, AsyncCallback asyncCallback, object asyncState);
abstract member BeginAuthenticateAsClient : string * System.Security.Cryptography.X509Certificates.X509CertificateCollection * bool * AsyncCallback * obj -> IAsyncResult
override this.BeginAuthenticateAsClient : string * System.Security.Cryptography.X509Certificates.X509CertificateCollection * bool * AsyncCallback * obj -> IAsyncResult
Public Overridable Function BeginAuthenticateAsClient (targetHost As String, clientCertificates As X509CertificateCollection, checkCertificateRevocation As Boolean, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult

參數

targetHost
String

伺服器的名稱,共用這個 SslStream

clientCertificates
X509CertificateCollection

X509CertificateCollection,包含用戶端憑證。

checkCertificateRevocation
Boolean

Boolean 值,指定是否要在驗證期間檢查憑證撤銷清單。

asyncCallback
AsyncCallback

AsyncCallback 委派,會於驗證完成時參考要叫用的方法。

asyncState
Object

使用者定義物件,包含作業的相關資訊。 作業完成時會將這個物件傳遞給 asyncCallback 委派。

傳回

IAsyncResult 物件,表示非同步作業的狀態。

例外狀況

targetHostnull

驗證失敗,且此物件處於不穩定的狀態。

已經進行驗證。

-或-

先前已嘗試過使用此 SslStream 進行伺服器驗證。

-或-

驗證已在進行中。

此物件已關閉。

備註

從 .NET Framework 4.7 開始,此方法會使用 None 進行驗證,讓作業系統選擇最適用的通訊協定,並封鎖不安全的通訊協定。 在 .NET Framework 4.6 (和已安裝最新安全性修補程式的 .NET Framework 4.5) 中,允許的 TLS/SSL 通訊協定版本為 1.2、1.1 和 1.0 (除非您編輯 Windows 登錄來停用強式加密)。

指定的 targetHost 值必須符合伺服器憑證上的名稱。

非同步驗證作業必須藉由呼叫 EndAuthenticateAsClient 方法來完成。 一般而言,委派會叫用 asyncCallback 方法。

這個方法不會在作業完成時封鎖。 若要封鎖直到作業完成為止,請使用其中 AuthenticateAsClient 一個 方法多載。

如需使用非同步程式設計模型的詳細資訊,請參閱 以非同步方式呼叫同步方法

如果您收到 AuthenticationException ,則 SslStream 無法再使用。 您應該關閉此物件,並移除它的所有參考,以便垃圾收集行程可以收集它。

注意

SSL 第 2 版通訊協定不支援用戶端憑證。

適用於

BeginAuthenticateAsClient(String, X509CertificateCollection, SslProtocols, Boolean, AsyncCallback, Object)

來源:
SslStream.cs
來源:
SslStream.cs
來源:
SslStream.cs

由用戶端呼叫以開始非同步作業,使用指定的憑證和安全性通訊協定來驗證伺服器及 (選擇性地驗證) 用戶端。

public:
 virtual IAsyncResult ^ BeginAuthenticateAsClient(System::String ^ targetHost, System::Security::Cryptography::X509Certificates::X509CertificateCollection ^ clientCertificates, System::Security::Authentication::SslProtocols enabledSslProtocols, bool checkCertificateRevocation, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection? clientCertificates, System.Security.Authentication.SslProtocols enabledSslProtocols, bool checkCertificateRevocation, AsyncCallback? asyncCallback, object? asyncState);
public virtual IAsyncResult BeginAuthenticateAsClient (string targetHost, System.Security.Cryptography.X509Certificates.X509CertificateCollection clientCertificates, System.Security.Authentication.SslProtocols enabledSslProtocols, bool checkCertificateRevocation, AsyncCallback asyncCallback, object asyncState);
abstract member BeginAuthenticateAsClient : string * System.Security.Cryptography.X509Certificates.X509CertificateCollection * System.Security.Authentication.SslProtocols * bool * AsyncCallback * obj -> IAsyncResult
override this.BeginAuthenticateAsClient : string * System.Security.Cryptography.X509Certificates.X509CertificateCollection * System.Security.Authentication.SslProtocols * bool * AsyncCallback * obj -> IAsyncResult
Public Overridable Function BeginAuthenticateAsClient (targetHost As String, clientCertificates As X509CertificateCollection, enabledSslProtocols As SslProtocols, checkCertificateRevocation As Boolean, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult

參數

targetHost
String

伺服器的名稱,共用這個 SslStream

clientCertificates
X509CertificateCollection

X509CertificateCollection,包含用戶端憑證。

enabledSslProtocols
SslProtocols

SslProtocols 值,代表用於驗證的通訊協定。

checkCertificateRevocation
Boolean

Boolean 值,指定是否要在驗證期間檢查憑證撤銷清單。

asyncCallback
AsyncCallback

AsyncCallback 委派,會於驗證完成時參考要叫用的方法。

asyncState
Object

使用者定義物件,包含作業的相關資訊。 作業完成時會將這個物件傳遞給 asyncCallback 委派。

傳回

IAsyncResult 物件,表示非同步作業的狀態。

例外狀況

targetHostnull

enabledSslProtocols 不是有效的 SslProtocols 值。

驗證失敗,且此物件處於不穩定的狀態。

已經進行驗證。

-或-

先前已嘗試過使用此 SslStream 進行伺服器驗證。

-或-

驗證已在進行中。

此物件已關閉。

備註

從 .NET Framework 4.7 開始,此方法會使用 None 進行驗證,讓作業系統選擇最適用的通訊協定,並封鎖不安全的通訊協定。 在 .NET Framework 4.6 (和已安裝最新安全性修補程式的 .NET Framework 4.5) 中,允許的 TLS/SSL 通訊協定版本為 1.2、1.1 和 1.0 (除非您編輯 Windows 登錄來停用強式加密)。

指定的 targetHost 值必須符合伺服器憑證上的名稱。

非同步驗證作業必須藉由呼叫 EndAuthenticateAsClient 方法來完成。 一般而言,委派會叫用 asyncCallback 方法。

這個方法不會在作業完成時封鎖。 若要封鎖直到作業完成為止,請使用其中 AuthenticateAsClient 一個 方法多載。

如需使用非同步程式設計模型的詳細資訊,請參閱 以非同步方式呼叫同步方法

如果您收到 AuthenticationException ,則 SslStream 無法再使用。 您應該關閉此物件,並移除它的所有參考,以便垃圾收集行程可以收集它。

注意

SSL 第 2 版通訊協定不支援用戶端憑證。

適用於