NegotiateStream.AuthenticateAsClientAsync メソッド

定義

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.

オーバーロード

AuthenticateAsClientAsync()

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.

AuthenticateAsClientAsync(NetworkCredential, String)

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定したクライアントの資格情報を使用します。The authentication process uses the specified client credential.

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定したクライアントの資格情報およびチャネル バインディングが使用されます。The authentication process uses the specified client credential and the channel binding.

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定した資格情報と認証オプションを使用します。The authentication process uses the specified credentials and authentication options.

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

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定した資格情報、認証オプション、およびチャネル バインディングが使用されます。The authentication process uses the specified credential, authentication options, and channel binding.

AuthenticateAsClientAsync()

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation.

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

戻り値

Task

非同期操作を表すタスク オブジェクト。The task object representing the asynchronous operation.

例外

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

このオブジェクトは閉じられました。This object has been closed.

認証が既に発生しました。Authentication has already occurred.

- または --or-

このストリームは、かつて、サーバーとして認証を行う目的で使用されていました。This stream was used previously to attempt authentication as the server. ストリームを使用して、クライアントとして認証を再試行することはできません。You cannot use the stream to retry authentication as the client.

注釈

認証では、クライアントのを使用し DefaultCredentials ます。The authentication uses the client's DefaultCredentials. サーバーに対してサービスプリンシパル名 (SPN) が指定されていません。No Service Principal Name (SPN) is specified for the server. 偽装レベルは Identification で、セキュリティレベルは EncryptAndSign で、相互認証が要求されます。The impersonation level is Identification, the security level is EncryptAndSign, and mutual authentication is requested. NegotiateStreamクラスは、相互認証に使用される SPN を構築します。The NegotiateStream class will construct the SPN used for mutual authentication.

認証が成功したら、 IsEncrypted プロパティとプロパティを確認し IsSigned て、で使用されているセキュリティサービスを確認する必要があり NegotiateStream ます。When authentication succeeds, you must check the IsEncrypted and IsSigned properties to determine what security services are used by the NegotiateStream. プロパティをチェックして、 IsMutuallyAuthenticated 相互認証が行われたかどうかを確認します。Check the IsMutuallyAuthenticated property to determine whether mutual authentication occurred.

認証に失敗した場合は、 AuthenticationException またはが表示さ InvalidCredentialException れます。If the authentication fails, you receive an AuthenticationException or an InvalidCredentialException. この場合は、別の資格情報で認証を再試行できます。In this case, you can retry the authentication with a different credential.

適用対象

AuthenticateAsClientAsync(NetworkCredential, String)

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定したクライアントの資格情報を使用します。The authentication process uses the specified client credential.

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

パラメーター

credential
NetworkCredential

クライアントの ID を確立するために使用される NetworkCredentialThe NetworkCredential that is used to establish the identity of the client.

targetName
String

認証するサーバーを一意に識別するサービス プリンシパル名 (SPN)。The Service Principal Name (SPN) that uniquely identifies the server to authenticate.

戻り値

Task

非同期操作を表すタスク オブジェクト。The task object representing the asynchronous operation.

例外

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

このオブジェクトは閉じられました。This object has been closed.

認証が既に発生しました。Authentication has already occurred.

- または --or-

このストリームは、かつて、サーバーとして認証を行う目的で使用されていました。This stream was used previously to attempt authentication as the server. ストリームを使用して、クライアントとして認証を再試行することはできません。You cannot use the stream to retry authentication as the client.

targetNamenullです。targetName is null.

注釈

偽装レベルは Identification で、セキュリティレベルは EncryptAndSign で、相互認証が要求されます。The impersonation level is Identification, the security level is EncryptAndSign, and mutual authentication is requested. NegotiateStreamクラスは、相互認証に使用される SPN を構築します。The NegotiateStream class will construct the SPN used for mutual authentication.

認証が成功したら、 IsEncrypted プロパティとプロパティを確認し IsSigned て、で使用されているセキュリティサービスを確認する必要があり NegotiateStream ます。When authentication succeeds, you must check the IsEncrypted and IsSigned properties to determine what security services are used by the NegotiateStream. プロパティをチェックして、 IsMutuallyAuthenticated 相互認証が行われたかどうかを確認します。Check the IsMutuallyAuthenticated property to determine whether mutual authentication occurred.

適用対象

AuthenticateAsClientAsync(NetworkCredential, ChannelBinding, String)

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定したクライアントの資格情報およびチャネル バインディングが使用されます。The authentication process uses the specified client credential and the channel binding.

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

パラメーター

credential
NetworkCredential

クライアントの ID を確立するために使用される NetworkCredentialThe NetworkCredential that is used to establish the identity of the client.

binding
ChannelBinding

拡張保護に使用する ChannelBindingThe ChannelBinding that is used for extended protection.

targetName
String

認証するサーバーを一意に識別するサービス プリンシパル名 (SPN)。The Service Principal Name (SPN) that uniquely identifies the server to authenticate.

戻り値

Task

非同期操作を表すタスク オブジェクト。The task object representing the asynchronous operation.

例外

targetNamenullです。targetName is null.

または-or- credentialnullです。credential is null.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証が既に発生しました。Authentication has already occurred.

- または --or-

このストリームは、かつて、サーバーとして認証を行う目的で使用されていました。This stream was used previously to attempt authentication as the server. ストリームを使用して、クライアントとして認証を再試行することはできません。You cannot use the stream to retry authentication as the client.

このオブジェクトは閉じられました。This object has been closed.

注釈

偽装レベルは Identification で、セキュリティレベルは EncryptAndSign で、相互認証が要求されます。The impersonation level is Identification, the security level is EncryptAndSign, and mutual authentication is requested. NegotiateStreamクラスは、相互認証に使用される SPN を構築します。The NegotiateStream class will construct the SPN used for mutual authentication.

ChannelBindingパラメーターでこのメソッドに渡される拡張保護に使用されるは、 binding 関連付けられているのプロパティから、アプリケーションによって取得され TransportContext SslStream ます。The ChannelBinding used for extended protection that is passed to this method in the binding parameter would be retrieved by an application from TransportContext property on the associated SslStream.

認証が成功したら、 IsEncrypted プロパティとプロパティを確認し IsSigned て、で使用されているセキュリティサービスを確認する必要があり NegotiateStream ます。When authentication succeeds, you must check the IsEncrypted and IsSigned properties to determine what security services are used by the NegotiateStream. プロパティをチェックして、 IsMutuallyAuthenticated 相互認証が行われたかどうかを確認します。Check the IsMutuallyAuthenticated property to determine whether mutual authentication occurred.

こちらもご覧ください

適用対象

AuthenticateAsClientAsync(NetworkCredential, String, ProtectionLevel, TokenImpersonationLevel)

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定した資格情報と認証オプションを使用します。The authentication process uses the specified credentials and authentication options.

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

パラメーター

credential
NetworkCredential

クライアントの ID を確立するために使用される NetworkCredentialThe NetworkCredential that is used to establish the identity of the client.

targetName
String

認証するサーバーを一意に識別するサービス プリンシパル名 (SPN)。The Service Principal Name (SPN) that uniquely identifies the server to authenticate.

requiredProtectionLevel
ProtectionLevel

ストリームのセキュリティ サービスを示す ProtectionLevel 値の 1 つ。One of the ProtectionLevel values, indicating the security services for the stream.

allowedImpersonationLevel
TokenImpersonationLevel

サーバーがクライアントの資格情報を使用してリソースにアクセスする方法を示す TokenImpersonationLevel 値の 1 つ。One of the TokenImpersonationLevel values, indicating how the server can use the client's credentials to access resources.

戻り値

Task

非同期操作を表すタスク オブジェクト。The task object representing the asynchronous operation.

例外

allowedImpersonationLevel は有効な値ではありません。allowedImpersonationLevel is not a valid value.

targetName が null です。targetName is null.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

このオブジェクトは閉じられました。This object has been closed.

認証が既に発生しました。Authentication has already occurred.

- または --or-

このストリームは、かつて、サーバーとして認証を行う目的で使用されていました。This stream was used previously to attempt authentication as the server. ストリームを使用して、クライアントとして認証を再試行することはできません。You cannot use the stream to retry authentication as the client.

注釈

requiredProtectionLevelパラメーターを使用して、認証されたストリームを使用して送信されるデータのセキュリティサービスを要求します。Use the requiredProtectionLevel parameter to request security services for data transmitted using the authenticated stream. たとえば、データを暗号化して署名するには、値を指定し EncryptAndSign ます。For example, to have the data encrypted and signed, specify the EncryptAndSign value. 認証が成功しても、要求されたが ProtectionLevel 許可されているかは保証されません。Successful authentication does not guarantee that the requested ProtectionLevel has been granted. IsEncrypted IsSigned よって使用されるセキュリティサービスを確認するには、プロパティとプロパティを確認する必要があり NegotiateStream ます。You must check the IsEncrypted and IsSigned properties to determine what security services are used by the NegotiateStream.

認証に失敗した場合は、 AuthenticationException またはが表示さ InvalidCredentialException れます。If the authentication fails, you receive an AuthenticationException or an InvalidCredentialException. この場合は、別の資格情報で認証を再試行できます。In this case, you can retry the authentication with a different credential.

適用対象

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

クライアントによって呼び出され、クライアントとサーバー間の接続で非同期操作としてクライアントと (オプションで) サーバーを認証します。Called by clients to authenticate the client, and optionally the server, in a client-server connection as an asynchronous operation. 認証プロセスでは、指定した資格情報、認証オプション、およびチャネル バインディングが使用されます。The authentication process uses the specified credential, authentication options, and channel binding.

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

パラメーター

credential
NetworkCredential

クライアントの ID を確立するために使用される NetworkCredentialThe NetworkCredential that is used to establish the identity of the client.

binding
ChannelBinding

拡張保護に使用する ChannelBindingThe ChannelBinding that is used for extended protection.

targetName
String

認証するサーバーを一意に識別するサービス プリンシパル名 (SPN)。The Service Principal Name (SPN) that uniquely identifies the server to authenticate.

requiredProtectionLevel
ProtectionLevel

ストリームのセキュリティ サービスを示す ProtectionLevel 値の 1 つ。One of the ProtectionLevel values, indicating the security services for the stream.

allowedImpersonationLevel
TokenImpersonationLevel

サーバーがクライアントの資格情報を使用してリソースにアクセスする方法を示す TokenImpersonationLevel 値の 1 つ。One of the TokenImpersonationLevel values, indicating how the server can use the client's credentials to access resources.

戻り値

Task

非同期操作を表すタスク オブジェクト。The task object representing the asynchronous operation.

例外

targetNamenullです。targetName is null.

または-or- credentialnullです。credential is null.

allowedImpersonationLevel は有効な値ではありません。allowedImpersonationLevel is not a valid value.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証に失敗しました。The authentication failed. このオブジェクトを使用して、認証を再試行できます。You can use this object to retry the authentication.

認証が既に発生しました。Authentication has already occurred.

- または --or-

このストリームは、かつて、サーバーとして認証を行う目的で使用されていました。This stream was used previously to attempt authentication as the server. ストリームを使用して、クライアントとして認証を再試行することはできません。You cannot use the stream to retry authentication as the client.

このオブジェクトは閉じられました。This object has been closed.

注釈

requiredProtectionLevelパラメーターを使用して、認証されたストリームを使用して送信されるデータのセキュリティサービスを要求します。Use the requiredProtectionLevel parameter to request security services for data transmitted using the authenticated stream. たとえば、データを暗号化して署名するには、値を指定し EncryptAndSign ます。For example, to have the data encrypted and signed, specify the EncryptAndSign value. 認証が成功しても、要求されたが ProtectionLevel 許可されているかは保証されません。Successful authentication does not guarantee that the requested ProtectionLevel has been granted. IsEncrypted IsSigned よって使用されるセキュリティサービスを確認するには、プロパティとプロパティを確認する必要があり NegotiateStream ます。You must check the IsEncrypted and IsSigned properties to determine what security services are used by the NegotiateStream.

ChannelBindingパラメーターでこのメソッドに渡される拡張保護に使用されるは、 binding 関連付けられているのプロパティから、アプリケーションによって取得され TransportContext SslStream ます。The ChannelBinding used for extended protection that is passed to this method in the binding parameter would be retrieved by an application from TransportContext property on the associated SslStream.

認証に失敗した場合は、 AuthenticationException またはが表示さ InvalidCredentialException れます。If the authentication fails, you receive an AuthenticationException or an InvalidCredentialException. この場合は、別の資格情報で認証を再試行できます。In this case, you can retry the authentication with a different credential.

こちらもご覧ください

適用対象