SslStream.BeginAuthenticateAsServer 方法

定义

开始一个异步操作,以处理进行身份验证的客户端-服务器连接中的服务器端。

重载

BeginAuthenticateAsServer(X509Certificate, AsyncCallback, Object)

服务器调用此方法,以便开始一个异步操作,对客户端-服务器连接中的客户端及服务器(可选)进行身份验证。

BeginAuthenticateAsServer(X509Certificate, Boolean, Boolean, AsyncCallback, Object)

由服务器调用,以使用指定的证书、要求和系统默认安全协议开始对服务器和客户端(可选)异步进行身份验证。

BeginAuthenticateAsServer(X509Certificate, Boolean, SslProtocols, Boolean, AsyncCallback, Object)

由服务器调用,以使用指定的证书、要求和安全协议开始对服务器和客户端(可选)异步进行身份验证。

注解

身份验证正在进行时,此方法的重载不会阻止。 若要在等待身份验证完成时阻止,请使用 方法之 AuthenticateAsServer 一。

BeginAuthenticateAsServer(X509Certificate, AsyncCallback, Object)

Source:
SslStream.cs
Source:
SslStream.cs
Source:
SslStream.cs

服务器调用此方法,以便开始一个异步操作,对客户端-服务器连接中的客户端及服务器(可选)进行身份验证。

public:
 virtual IAsyncResult ^ BeginAuthenticateAsServer(System::Security::Cryptography::X509Certificates::X509Certificate ^ serverCertificate, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public virtual IAsyncResult BeginAuthenticateAsServer (System.Security.Cryptography.X509Certificates.X509Certificate serverCertificate, AsyncCallback? asyncCallback, object? asyncState);
public virtual IAsyncResult BeginAuthenticateAsServer (System.Security.Cryptography.X509Certificates.X509Certificate serverCertificate, AsyncCallback asyncCallback, object asyncState);
abstract member BeginAuthenticateAsServer : System.Security.Cryptography.X509Certificates.X509Certificate * AsyncCallback * obj -> IAsyncResult
override this.BeginAuthenticateAsServer : System.Security.Cryptography.X509Certificates.X509Certificate * AsyncCallback * obj -> IAsyncResult
Public Overridable Function BeginAuthenticateAsServer (serverCertificate As X509Certificate, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult

参数

serverCertificate
X509Certificate

用于对服务器进行身份验证的 X509Certificate 。

asyncCallback
AsyncCallback

一个 AsyncCallback 委托,该委托引用当身份验证完成时要调用的方法。

asyncState
Object

一个用户定义对象,其中包含操作的相关信息。 操作完成时,此对象传递给 asyncCallback 委托。

返回

一个指示异步操作状态的 IAsyncResult 对象。

例外

serverCertificatenull

身份验证失败,并使此对象处于不可用的状态。

已进行了身份验证。

之前已尝试使用此 SslStream 进行了客户端身份验证。

身份验证已在进行中。

此对象已关闭。

Windows 95、Windows 98 或 Windows Millennium 上不支持 BeginAuthenticateAsServer 方法。

注解

从 .NET Framework 4.7 开始,此方法使用 None 进行身份验证,这允许操作系统选择要使用的最佳协议,并将其用于阻止不安全的协议。 在 .NET Framework 4.6(以及安装了最新安全修补程序的 .NET Framework 4.5)中,允许的 TLS/SSL 协议版本为 1.2、1.1 和 1.0(除非通过编辑 Windows 注册表禁用强加密)。 身份验证期间不会检查证书吊销列表。 客户端不需要提供用于身份验证的证书。

异步身份验证操作必须通过调用 EndAuthenticateAsClient 方法来完成。 通常,委托调用 asyncCallback 方法。

此方法不会在操作完成时阻止。 若要在操作完成之前阻止,请使用 方法重载之 AuthenticateAsClient 一。

有关使用异步编程模型的详细信息,请参阅 异步调用同步方法

如果收到 , AuthenticationException则不再 SslStream 可用。 应关闭此对象并删除对其的所有引用,以便垃圾回收器可以收集它。

适用于

BeginAuthenticateAsServer(X509Certificate, Boolean, Boolean, AsyncCallback, Object)

Source:
SslStream.cs
Source:
SslStream.cs
Source:
SslStream.cs

由服务器调用,以使用指定的证书、要求和系统默认安全协议开始对服务器和客户端(可选)异步进行身份验证。

public:
 virtual IAsyncResult ^ BeginAuthenticateAsServer(System::Security::Cryptography::X509Certificates::X509Certificate ^ serverCertificate, bool clientCertificateRequired, bool checkCertificateRevocation, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public virtual IAsyncResult BeginAuthenticateAsServer (System.Security.Cryptography.X509Certificates.X509Certificate serverCertificate, bool clientCertificateRequired, bool checkCertificateRevocation, AsyncCallback? asyncCallback, object? asyncState);
public virtual IAsyncResult BeginAuthenticateAsServer (System.Security.Cryptography.X509Certificates.X509Certificate serverCertificate, bool clientCertificateRequired, bool checkCertificateRevocation, AsyncCallback asyncCallback, object asyncState);
abstract member BeginAuthenticateAsServer : System.Security.Cryptography.X509Certificates.X509Certificate * bool * bool * AsyncCallback * obj -> IAsyncResult
override this.BeginAuthenticateAsServer : System.Security.Cryptography.X509Certificates.X509Certificate * bool * bool * AsyncCallback * obj -> IAsyncResult
Public Overridable Function BeginAuthenticateAsServer (serverCertificate As X509Certificate, clientCertificateRequired As Boolean, checkCertificateRevocation As Boolean, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult

参数

serverCertificate
X509Certificate

用于对服务器进行身份验证的 X509Certificate 。

clientCertificateRequired
Boolean

一个 Boolean 值,该值指定是否向客户端请求证书用于进行身份验证。 请注意,这只是一个请求 - 如果没有提供任何证书,服务器仍然可接受连接请求。

checkCertificateRevocation
Boolean

一个 Boolean 值,该值指定身份验证期间是否检查证书吊销列表。

asyncCallback
AsyncCallback

一个 AsyncCallback 委托,该委托引用当身份验证完成时要调用的方法。

asyncState
Object

一个用户定义对象,其中包含操作的相关信息。 操作完成时,此对象传递给 asyncCallback 委托。

返回

一个指示异步操作状态的 IAsyncResult 对象。

例外

serverCertificatenull

身份验证失败,并使此对象处于不可用的状态。

已进行了身份验证。

之前已尝试使用此 SslStream 进行了服务器身份验证。

身份验证已在进行中。

此对象已关闭。

Windows 95、Windows 98 或 Windows Millennium 上不支持 BeginAuthenticateAsServer 方法。

注解

从 .NET Framework 4.7 开始,此方法使用 None 进行身份验证,这允许操作系统选择要使用的最佳协议,并将其用于阻止不安全的协议。 在 .NET Framework 4.6(以及安装了最新安全修补程序的 .NET Framework 4.5)中,允许的 TLS/SSL 协议版本为 1.2、1.1 和 1.0(除非通过编辑 Windows 注册表禁用强加密)。

异步身份验证操作必须通过调用 EndAuthenticateAsServer 方法来完成。 通常,委托调用 asyncCallback 方法。

此方法不会在操作完成时阻止。 若要在操作完成之前阻止,请使用 方法重载之 AuthenticateAsServer 一。

有关使用异步编程模型的详细信息,请参阅 异步调用同步方法

如果收到 , AuthenticationException则不再 SslStream 可用。 应关闭此对象并删除对其的所有引用,以便垃圾回收器可以收集它。

适用于

BeginAuthenticateAsServer(X509Certificate, Boolean, SslProtocols, Boolean, AsyncCallback, Object)

Source:
SslStream.cs
Source:
SslStream.cs
Source:
SslStream.cs

由服务器调用,以使用指定的证书、要求和安全协议开始对服务器和客户端(可选)异步进行身份验证。

public:
 virtual IAsyncResult ^ BeginAuthenticateAsServer(System::Security::Cryptography::X509Certificates::X509Certificate ^ serverCertificate, bool clientCertificateRequired, System::Security::Authentication::SslProtocols enabledSslProtocols, bool checkCertificateRevocation, AsyncCallback ^ asyncCallback, System::Object ^ asyncState);
public virtual IAsyncResult BeginAuthenticateAsServer (System.Security.Cryptography.X509Certificates.X509Certificate serverCertificate, bool clientCertificateRequired, System.Security.Authentication.SslProtocols enabledSslProtocols, bool checkCertificateRevocation, AsyncCallback? asyncCallback, object? asyncState);
public virtual IAsyncResult BeginAuthenticateAsServer (System.Security.Cryptography.X509Certificates.X509Certificate serverCertificate, bool clientCertificateRequired, System.Security.Authentication.SslProtocols enabledSslProtocols, bool checkCertificateRevocation, AsyncCallback asyncCallback, object asyncState);
abstract member BeginAuthenticateAsServer : System.Security.Cryptography.X509Certificates.X509Certificate * bool * System.Security.Authentication.SslProtocols * bool * AsyncCallback * obj -> IAsyncResult
override this.BeginAuthenticateAsServer : System.Security.Cryptography.X509Certificates.X509Certificate * bool * System.Security.Authentication.SslProtocols * bool * AsyncCallback * obj -> IAsyncResult
Public Overridable Function BeginAuthenticateAsServer (serverCertificate As X509Certificate, clientCertificateRequired As Boolean, enabledSslProtocols As SslProtocols, checkCertificateRevocation As Boolean, asyncCallback As AsyncCallback, asyncState As Object) As IAsyncResult

参数

serverCertificate
X509Certificate

用于对服务器进行身份验证的 X509Certificate 。

clientCertificateRequired
Boolean

一个 Boolean 值,该值指定是否向客户端请求证书用于进行身份验证。 请注意,这只是一个请求 - 如果没有提供任何证书,服务器仍然可接受连接请求。

enabledSslProtocols
SslProtocols

SslProtocols 值,该值表示进行身份验证所使用的协议。

checkCertificateRevocation
Boolean

一个 Boolean 值,该值指定身份验证期间是否检查证书吊销列表。

asyncCallback
AsyncCallback

一个 AsyncCallback 委托,该委托引用当身份验证完成时要调用的方法。

asyncState
Object

一个用户定义对象,其中包含操作的相关信息。 操作完成时,此对象传递给 asyncCallback 委托。

返回

一个指示异步操作状态的 IAsyncResult 对象。

例外

serverCertificatenull

enabledSslProtocols 不是有效的 SslProtocols 值。

身份验证失败,并使此对象处于不可用的状态。

已进行了身份验证。

之前已尝试使用此 SslStream 进行了服务器身份验证。

身份验证已在进行中。

此对象已关闭。

Windows 95、Windows 98 或 Windows Millennium 上不支持 BeginAuthenticateAsServer 方法。

注解

从 .NET Framework 4.7 开始,此方法使用 None 进行身份验证,这允许操作系统选择要使用的最佳协议,并将其用于阻止不安全的协议。 在 .NET Framework 4.6(以及安装了最新安全修补程序的 .NET Framework 4.5)中,允许的 TLS/SSL 协议版本为 1.2、1.1 和 1.0(除非通过编辑 Windows 注册表禁用强加密)。

异步身份验证操作必须通过调用 EndAuthenticateAsServer 方法来完成。 通常,委托调用 asyncCallback 方法。

此方法不会在操作完成时阻止。 若要在操作完成之前阻止,请使用 方法重载之 AuthenticateAsServer 一。

有关使用异步编程模型的详细信息,请参阅 异步调用同步方法

如果收到 , AuthenticationException则不再 SslStream 可用。 应关闭此对象并删除对其的所有引用,以便垃圾回收器可以收集它。

适用于