SmtpClient.EnableSsl Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Specificare se la classe SmtpClient utilizza SSL (Secure Sockets Layer) per crittografare la connessione.
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
Valore della proprietà
true
se la classe SmtpClient utilizza SSL. In caso contrario, false
. Il valore predefinito è false
.
Esempio
Nell'esempio di codice seguente viene stabilita una connessione SSL con il server SMTP e viene usata la connessione per inviare un messaggio di posta elettronica.
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);
}
Commenti
La EnableSsl proprietà specifica se SSL viene usato per accedere al server di posta SMTP specificato.
Il valore predefinito per questa proprietà può essere impostato anche in un computer o in un file di configurazione dell'applicazione. Tutte le modifiche apportate alla proprietà eseguono l'override EnableSsl delle impostazioni del file di configurazione.
La SmtpClient classe supporta solo l'estensione del servizio SMTP per secure SMTP su Transport Layer Security, come definito in RFC 3207. In questa modalità, la sessione SMTP inizia su un canale non crittografato, quindi un comando STARTTLS viene rilasciato dal client al server per passare alla comunicazione sicura tramite SSL. Per altre informazioni, vedere RFC 3207 pubblicato dalla Internet Engineering Task Force (IETF).
Un metodo di connessione alternativo è la posizione in cui viene stabilita una sessione SSL prima dell'invio di tutti i comandi del protocollo. Questo metodo di connessione viene talvolta chiamato SMTP/SSL, SMTP su SSL o SMTPS e per impostazione predefinita usa la porta 465. Questo metodo di connessione alternativo con SSL non è attualmente supportato.
È possibile usare ClientCertificates per specificare quali certificati client devono essere usati per stabilire la connessione SSL. Consente ServerCertificateValidationCallback di rifiutare il certificato fornito dal server SMTP. La SecurityProtocol proprietà consente di specificare la versione del protocollo SSL da usare.
Nota
Se la EnableSsl proprietà è impostata su true
e il server di posta SMTP non annuncia STARTTLS nella risposta al comando EHLO, verrà generata una SmtpExceptionchiamata ai Send metodi o SendAsync .