SslStream.AuthenticateAsServerAsync Method (X509Certificate, Boolean, SslProtocols, Boolean)

.NET Framework (current version)

The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Called by servers to authenticate the server and optionally the client in a client-server connection using the specified certificates, requirements and security protocol as an asynchronous operation.

Namespace:   System.Net.Security
Assembly:  System (in System.dll)

[HostProtectionAttribute(SecurityAction.LinkDemand, ExternalThreading = true)]
public virtual Task AuthenticateAsServerAsync(
	X509Certificate serverCertificate,
	bool clientCertificateRequired,
	SslProtocols enabledSslProtocols,
	bool checkCertificateRevocation


Type: System.Security.Cryptography.X509Certificates.X509Certificate

The X509Certificate used to authenticate the server.

Type: System.Boolean

A Boolean value that specifies whether the client is asked for a certificate for authentication. Note that this is only a request -- if no certificate is provided, the server still accepts the connection request.

Type: System.Security.Authentication.SslProtocols

The SslProtocols value that represents the protocol used for authentication.

Type: System.Boolean

A Boolean value that specifies whether the certificate revocation list is checked during authentication.

Return Value

Type: System.Threading.Tasks.Task

Returns Task

The task object representing the asynchronous operation.

If the authentication fails, you receive a AuthenticationException, and this SslStream is no longer useable. You should close this object and remove all references to it so that it can be collected by the garbage collector.

.NET Framework
Available since 4.5
Return to top