NegotiateStream.AuthenticateAsClient 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。
多載
AuthenticateAsClient() |
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 |
AuthenticateAsClient(NetworkCredential, String) |
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的用戶端認證。 |
AuthenticateAsClient(NetworkCredential, ChannelBinding, String) |
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的用戶端認證和通道繫結。 |
AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel) |
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的認證和驗證選項。 |
AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel) |
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的認證、驗證選項和通道繫結。 |
AuthenticateAsClient()
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。
public:
virtual void AuthenticateAsClient();
public virtual void AuthenticateAsClient ();
abstract member AuthenticateAsClient : unit -> unit
override this.AuthenticateAsClient : unit -> unit
Public Overridable Sub AuthenticateAsClient ()
例外狀況
驗證失敗。 您可以使用這個物件重試驗證。
驗證失敗。 您可以使用這個物件重試驗證。
此物件已關閉。
備註
驗證會使用用戶端 的 DefaultCredentials。 未為伺服器指定任何服務主體名稱 (SPN) 。 模擬層級為 Identification,安全性層級為 EncryptAndSign,而且會要求相互驗證。 類別 NegotiateStream 會建構用於相互驗證的SPN。
驗證成功時,您必須檢查 IsEncrypted 和 IsSigned 屬性,以判斷 所使用的 NegotiateStream安全性服務。 IsMutuallyAuthenticated檢查 屬性,以判斷是否發生相互驗證。
如果驗證失敗,您會收到 AuthenticationException 或 InvalidCredentialException。 在此情況下,您可以使用不同的認證重試驗證。
適用於
AuthenticateAsClient(NetworkCredential, String)
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的用戶端認證。
public:
virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::String ^ targetName);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, string targetName);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * string -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * string -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, targetName As String)
參數
- credential
- NetworkCredential
建立用戶端識別所用的 NetworkCredential。
- targetName
- String
服務主要名稱 (SPN),用來唯一識別要驗證的伺服器。
例外狀況
驗證失敗。 您可以使用這個物件重試驗證。
驗證失敗。 您可以使用這個物件重試驗證。
此物件已關閉。
targetName
為 null
。
備註
模擬層級為 Identification,安全性層級為 EncryptAndSign,而且會要求相互驗證。 類別 NegotiateStream 會建構用於相互驗證的SPN。
驗證成功時,您必須檢查 IsEncrypted 和 IsSigned 屬性,以判斷 所使用的 NegotiateStream安全性服務。 IsMutuallyAuthenticated檢查 屬性,以判斷是否發生相互驗證。
適用於
AuthenticateAsClient(NetworkCredential, ChannelBinding, String)
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的用戶端認證和通道繫結。
public:
virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::Security::Authentication::ExtendedProtection::ChannelBinding ^ binding, System::String ^ targetName);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding? binding, string targetName);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding binding, string targetName);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, binding As ChannelBinding, targetName As String)
參數
- credential
- NetworkCredential
建立用戶端識別所用的 NetworkCredential。
- binding
- ChannelBinding
用於延伸保護的 ChannelBinding。
- targetName
- String
服務主要名稱 (SPN),用來唯一識別要驗證的伺服器。
例外狀況
驗證失敗。 您可以使用這個物件重試驗證。
驗證失敗。 您可以使用這個物件重試驗證。
此物件已關閉。
備註
模擬層級為 Identification,安全性層級為 EncryptAndSign,而且會要求相互驗證。 類別 NegotiateStream 會建構用於相互驗證的SPN。
ChannelBinding用於在 參數中傳遞至這個方法之擴充保護的 binding
,會由應用程式從TransportContext相關聯 SslStream上的 屬性擷取。
驗證成功時,您必須檢查 IsEncrypted 和 IsSigned 屬性,以判斷 所使用的 NegotiateStream安全性服務。 IsMutuallyAuthenticated檢查 屬性,以判斷是否發生相互驗證。
另請參閱
適用於
AuthenticateAsClient(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的認證和驗證選項。
public:
virtual void AuthenticateAsClient(System::Net::NetworkCredential ^ credential, System::String ^ targetName, System::Net::Security::ProtectionLevel requiredProtectionLevel, System::Security::Principal::TokenImpersonationLevel allowedImpersonationLevel);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, targetName As String, requiredProtectionLevel As ProtectionLevel, allowedImpersonationLevel As TokenImpersonationLevel)
參數
- credential
- NetworkCredential
建立用戶端識別所用的 NetworkCredential。
- targetName
- String
服務主要名稱 (SPN),用來唯一識別要驗證的伺服器。
- requiredProtectionLevel
- ProtectionLevel
其中一個 ProtectionLevel 值,表示資料流的安全性服務。
- allowedImpersonationLevel
- TokenImpersonationLevel
其中一個 TokenImpersonationLevel 值,表示伺服器要如何使用用戶端的認證來存取資源。
例外狀況
allowedImpersonationLevel
不是有效的值。
targetName
為 null。
驗證失敗。 您可以使用這個物件重試驗證。
驗證失敗。 您可以使用這個物件重試驗證。
此物件已關閉。
備註
requiredProtectionLevel
使用 參數,針對使用已驗證數據流傳輸的數據要求安全性服務。 例如,若要讓數據加密並簽署,請指定 EncryptAndSign 值。 成功驗證不保證已授與要求的 ProtectionLevel 。 您必須檢查 IsEncrypted 和 IsSigned 屬性,以判斷 所使用的 NegotiateStream安全性服務。
如果驗證失敗,您會收到 AuthenticationException 或 InvalidCredentialException。 在此情況下,您可以使用不同的認證重試驗證。
適用於
AuthenticateAsClient(NetworkCredential, ChannelBinding, String, ProtectionLevel, TokenImpersonationLevel)
由用戶端呼叫以驗證用戶端與伺服器連接中的用戶端,並選擇性地驗證伺服器。 驗證處理序使用指定的認證、驗證選項和通道繫結。
public:
virtual void AuthenticateAsClient(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 void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding? binding, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
public virtual void AuthenticateAsClient (System.Net.NetworkCredential credential, System.Security.Authentication.ExtendedProtection.ChannelBinding binding, string targetName, System.Net.Security.ProtectionLevel requiredProtectionLevel, System.Security.Principal.TokenImpersonationLevel allowedImpersonationLevel);
abstract member AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
override this.AuthenticateAsClient : System.Net.NetworkCredential * System.Security.Authentication.ExtendedProtection.ChannelBinding * string * System.Net.Security.ProtectionLevel * System.Security.Principal.TokenImpersonationLevel -> unit
Public Overridable Sub AuthenticateAsClient (credential As NetworkCredential, binding As ChannelBinding, targetName As String, requiredProtectionLevel As ProtectionLevel, allowedImpersonationLevel As TokenImpersonationLevel)
參數
- credential
- NetworkCredential
建立用戶端識別所用的 NetworkCredential。
- binding
- ChannelBinding
用於延伸保護的 ChannelBinding。
- targetName
- String
服務主要名稱 (SPN),用來唯一識別要驗證的伺服器。
- requiredProtectionLevel
- ProtectionLevel
其中一個 ProtectionLevel 值,表示資料流的安全性服務。
- allowedImpersonationLevel
- TokenImpersonationLevel
其中一個 TokenImpersonationLevel 值,表示伺服器要如何使用用戶端的認證來存取資源。
例外狀況
allowedImpersonationLevel
不是有效的值。
驗證失敗。 您可以使用這個物件重試驗證。
驗證失敗。 您可以使用這個物件重試驗證。
此物件已關閉。
備註
requiredProtectionLevel
使用 參數,針對使用已驗證數據流傳輸的數據要求安全性服務。 例如,若要讓數據加密並簽署,請指定 EncryptAndSign 值。 成功驗證不保證已授與要求的 ProtectionLevel 。 您必須檢查 IsEncrypted 和 IsSigned 屬性,以判斷 所使用的 NegotiateStream安全性服務。
ChannelBinding用於在 參數中傳遞至這個方法之擴充保護的 binding
,會由應用程式從TransportContext相關聯 SslStream上的 屬性擷取。
如果驗證失敗,您會收到 AuthenticationException 或 InvalidCredentialException。 在此情況下,您可以使用不同的認證重試驗證。