この記事の英語版を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語
このドキュメントはアーカイブされており、メンテナンスされていません。

SmtpClient.EnableSsl プロパティ

SmtpClient が、接続を暗号化するために SSL (Secure Sockets Layer) を使用するかどうかを指定します。

名前空間:  System.Net.Mail
アセンブリ:  System (System.dll 内)

public bool EnableSsl { get; set; }

プロパティ値

型: System.Boolean
SmtpClient が SSL を使用する場合は true。それ以外の場合は false 既定値は、false です。

EnableSsl プロパティは、指定された SMTP メール サーバーにアクセスするために SSL が使用されるかどうかを指定します。

このプロパティの既定値は、コンピューター構成ファイルまたはアプリケーション構成ファイルで設定することもできます。 EnableSsl プロパティへの変更は、構成ファイルの設定をオーバーライドします。

SmtpClient クラスは、RFC 3207 に定義されているように、トランスポート層セキュリティを使用した安全な SMTP のための SMTP サービス拡張のみをサポートします。 このモードでは、SMTP セッションが暗号化されていないチャネルで開始されます。その後、SSL によるセキュリティで保護された通信に切り替えるために、クライアントからサーバーに対して STARTTLS コマンドが実行されます。 詳細については、インターネット技術標準化委員会 (IETF: Internet Engineering Task Force) から発行された RFC 3207 を参照してください。

事前に SSL セッションが確立され、その後にプロトコル コマンドが送信されるという、代替接続方法もあります。 この接続方法は、SMTP/SSL、SMTP over SSL、または SMTPS と呼ばれることがあり、既定ではポート 465 を使用します。 SSL を使用するこの代替接続方法は、現在はサポートされていません。

ClientCertificates を使用して、SSL 接続を確立するために使用する必要のあるクライアント証明書を指定できます。 ServerCertificateValidationCallback を使用すると、SMTP サーバーによって指定された証明書を拒否できます。 SecurityProtocol プロパティにより、使用する SSL プロトコルのバージョンを指定できます。

メモメモ

EnableSsl プロパティが true に設定されている場合で、SMTP メール サーバーが EHLO コマンドに対する応答で STARTTLS をアドバタイズしないときは、Send or SendAsync メソッドを呼び出すと SmtpException がスローされます。

SMTP サーバーとの SSL 接続を確立し、その接続を使用して電子メールを送信するコード例を次に示します。


		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 e-mail 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 e-mail on the client's behalf.
			client.UseDefaultCredentials = true;
                        client.EnableSsl = true;
			client.Send(message);
		}


.NET Framework

サポート対象: 4、3.5、3.0、2.0

.NET Framework Client Profile

サポート対象: 4、3.5 SP1

Windows 7, Windows Vista SP1 以降, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core はサポート対象外), Windows Server 2008 R2 (SP1 以降で Server Core をサポート), Windows Server 2003 SP2

.NET Framework では、各プラットフォームのすべてのバージョンはサポートしていません。 サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
表示: