SmtpClient.EnableSsl Propriété

Définition

Spécifiez si SmtpClient utilise le protocole SSL (Secure Sockets Layer) pour chiffrer la connexion.

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

Valeur de propriété

true si SmtpClient utilise le protocole SSL ; sinon, false. La valeur par défaut est false.

Exemples

L’exemple de code suivant établit une connexion SSL avec le serveur SMTP et utilise la connexion pour envoyer un e-mail.

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);
}

Remarques

La EnableSsl propriété spécifie si SSL est utilisé pour accéder au serveur de messagerie SMTP spécifié.

La valeur par défaut de cette propriété peut également être définie dans un fichier de configuration de machine ou d’application. Toutes les modifications apportées à la EnableSsl propriété remplacent les paramètres du fichier de configuration.

La classe SmtpClient prend uniquement en charge SMTP Service Extension for Secure SMTP over Transport Layer Security, comme défini dans le RFC 3207. Dans ce mode, la session SMTP commence sur un canal non chiffré, puis une commande STARTTLS est adressée au serveur par le client pour passer en mode de communication sécurisée par SSL. Pour plus d’informations, reportez-vous au RFC 3207 publié par l’Internet Engineering Task Force (IETF).

Une autre méthode de connexion consiste à établir une session SSL avant l’envoi de toute commande de protocole. Cette méthode de connexion est parfois appelée SMTP/SSL, SMTP sur SSL ou SMTPS et utilise par défaut le port 465. Cette méthode de connexion alternative utilisant SSL n’est actuellement pas prise en charge.

Vous pouvez utiliser ClientCertificates pour spécifier les certificats clients à utiliser pour établir la connexion SSL. le ServerCertificateValidationCallback vous permet de rejeter le certificat fourni par le serveur SMTP. La SecurityProtocol propriété vous permet de spécifier la version du protocole SSL à utiliser.

Notes

Si la propriété a la EnableSsl valeur trueet que le serveur de messagerie SMTP ne publie pas STARTTLS dans la réponse à la commande EHLO, un appel aux Send méthodes ou SendAsync lève un SmtpException.

S’applique à

Voir aussi