SslStream.BeginAuthenticateAsClient 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
開始作業以驗證用戶端與伺服器連接中的用戶端。
多載
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
參數
- asyncCallback
- AsyncCallback
AsyncCallback 委派,會於驗證完成時參考要叫用的方法。
- asyncState
- Object
使用者定義物件,包含作業的相關資訊。 作業完成時會將這個物件傳遞給 asyncCallback
委派。
傳回
IAsyncResult 物件,表示非同步作業的狀態。
例外狀況
targetHost
為 null
。
驗證失敗,且此物件處於不穩定的狀態。
此物件已關閉。
備註
從 .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
參數
- clientCertificates
- X509CertificateCollection
X509CertificateCollection,包含用戶端憑證。
- asyncCallback
- AsyncCallback
AsyncCallback 委派,會於驗證完成時參考要叫用的方法。
- asyncState
- Object
使用者定義物件,包含作業的相關資訊。 作業完成時會將這個物件傳遞給 asyncCallback
委派。
傳回
IAsyncResult 物件,表示非同步作業的狀態。
例外狀況
targetHost
為 null
。
驗證失敗,且此物件處於不穩定的狀態。
此物件已關閉。
備註
從 .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
參數
- clientCertificates
- X509CertificateCollection
X509CertificateCollection,包含用戶端憑證。
- enabledSslProtocols
- SslProtocols
SslProtocols 值,代表用於驗證的通訊協定。
- asyncCallback
- AsyncCallback
AsyncCallback 委派,會於驗證完成時參考要叫用的方法。
- asyncState
- Object
使用者定義物件,包含作業的相關資訊。 作業完成時會將這個物件傳遞給 asyncCallback
委派。
傳回
IAsyncResult 物件,表示非同步作業的狀態。
例外狀況
targetHost
為 null
。
enabledSslProtocols
不是有效的 SslProtocols 值。
驗證失敗,且此物件處於不穩定的狀態。
此物件已關閉。
備註
從 .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 版通訊協定不支援用戶端憑證。
適用於
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應