SmtpClient.EnableSsl Propiedad

Definición

Especifique si el objeto SmtpClient utiliza SSL (Secure Sockets Layer) para cifrar la conexión.

public:
 property bool EnableSsl { bool get(); void set(bool value); };
public bool EnableSsl { get; set; }
member this.EnableSsl : bool with get, set
Public Property EnableSsl As Boolean

Valor de propiedad

Es true si el objeto SmtpClient utiliza SSL; en caso contrario, es false. De manera predeterminada, es false.

Ejemplos

En el ejemplo de código siguiente se establece una conexión SSL con el servidor SMTP y se usa la conexión para enviar un correo electrónico.

public static void CreateTestMessage(string server)
{
    string to = "jane@contoso.com";
    string from = "ben@contoso.com";
    MailMessage message = new MailMessage(from, to);
    message.Subject = "Using the new SMTP client.";
    message.Body = @"Using this new feature, you can send an email message from an application very easily.";
    SmtpClient client = new SmtpClient(server);
    // Credentials are necessary if the server requires the client
    // to authenticate before it will send email on the client's behalf.
    client.UseDefaultCredentials = true;
                client.EnableSsl = true;
    client.Send(message);
}

Comentarios

La EnableSsl propiedad especifica si SSL se usa para tener acceso al servidor de correo SMTP especificado.

El valor predeterminado de esta propiedad también se puede establecer en un archivo de configuración de máquina o aplicación. Los cambios realizados en la EnableSsl propiedad invalidan la configuración del archivo de configuración.

La clase SmtpClient solo admite la extensión de servicio SMTP para SMTP seguro sobre la Seguridad de la capa de transporte, según lo definido en RFC 3207. En este modo, la sesión SMTP comienza en un canal sin cifrar y, luego, el cliente emite un comando STARTTLS al servidor para cambiar a una comunicación segura mediante SSL. Para más información, consulte el documento RFC 3207, publicado por el Grupo de trabajo de ingeniería de Internet (IETF).

Un método de conexión alternativo es donde se establece una sesión SSL por adelantado antes de que se envíen comandos de protocolo. Este método de conexión se denomina a veces SMTP/SSL, SMTP a través de SSL o SMTPS y, de forma predeterminada, usa el puerto 465. Actualmente, no se admite este método de conexión alternativo mediante SSL.

Puede usar ClientCertificates para especificar qué certificados de cliente se deben usar para establecer la conexión SSL. ServerCertificateValidationCallback permite rechazar el certificado proporcionado por el servidor SMTP. La SecurityProtocol propiedad permite especificar la versión del protocolo SSL que se va a usar.

Nota

Si la EnableSsl propiedad se establece trueen y el servidor de correo SMTP no anuncia STARTTLS en la respuesta al comando EHLO, una llamada a los Send métodos o SendAsync producirá un SmtpException.

Se aplica a

Consulte también