Amazon Simple Email Service
開発者ガイド

Amazon SES およびセキュリティプロトコル

このトピックでは、Amazon SES に接続する際、そして Amazon SES が受信者に E メールを送信する際に使用できるセキュリティプロトコルについて説明します。

E メール送信者から Amazon SES へ

Amazon SES に接続するために使われるセキュリティプロトコルは、以下に説明されるように、Amazon SES API あるいは Amazon SES SMTP インターフェイスの使用によって異なります。

HTTPS

Amazon SES API を使用している場合は (直接または AWS SDK 経由で)、すべての通信は Amazon SES の HTTPS エンドポイントによる TLS で暗号化されます。Amazon SES の HTTPS エンドポイントは、TLS 1.2、TLS 1.1、TLS 1.0 のみをサポートします。

SMTP インターフェイス

SMTP インターフェイスを介して Amazon SES にアクセスする場合、Transport Layer Security (TLS) を使って接続を暗号化する必要があります。TLS は、以前のプロトコルの名前である「Secure Sockets Layer (SSL)」と呼ばれることが多いことに注意してください。

Amazon SES は、TLS で暗号化された接続を確立するために、STARTTLS、TLS ラッパーという 2 とおりのメカニズムをサポートしています。

  • STARTTLS — STARTTLS とは、暗号化されていない接続を暗号化された接続にアップグレードする方法です。STARTTLS には、様々なプロトコルに対応したバージョンがあります。SMTP バージョンは、「RFC 3207」に定義されています。STARTTLS 接続の場合、Amazon SES は TLS 1.2、TLS 1.1、TLS 1.0、および SSLv2Hello をサポートします。

  • TLS Wrapper — TLS Wrapper (SMTPS またはハンドシェイクプロトコルとも呼ばれる) は、最初に暗号化されていない接続を確立するのではなく、最初から暗号化された接続を開始する方法です。TLS ラッパーを使用する場合、Amazon SES SMTP エンドポイントは TLS ネゴシエーションを実行しません。TLS を使用してエンドポイントに接続し、通信全体で TLS の使用を継続するのはクライアントの役割です。TLS ラッパーは古いプロトコルですが、数多くのクライアントが今もサポートしています。TLS ラッパー接続の場合、Amazon SES は TLS 1.2、TLS 1.1、および TLS 1.0 をサポートします。

これらの方法を使用して Amazon SES SMTP インターフェイスに接続する詳細については、「Amazon SES SMTP エンドポイントに接続する」を参照してください。

Amazon SES から受信者へ

Amazon SES では、TLS 接続に TLS 1.2、TLS 1.1 および TLS 1.0 をサポートしています。

デフォルトで、Amazon SES は 日和見 TLSを使用します。つまり、Amazon SES は常に受信メールサーバーへの安全な接続を確立しようとします。安全な接続を確立できない場合、Amazon SES は平文メッセージを送信します。

この動作は、設定セットを使用することで変更できます。PutConfigurationSetDeliveryOptions API オペレーションを使用して、設定セットの TlsPolicy プロパティを Require に設定します。この変更には、AWS CLI を使用できます。

設定セットに TLS 接続を要求するよう Amazon SES を設定するには

  • コマンドラインで以下のコマンドを入力します。

    aws ses put-configuration-set-delivery-options --configuration-set-name MyConfigurationSet --delivery-options TlsPolicy=Require

    前例では、MyConfigurationSet を設定セットの名前と置き換えます。

    この設定セットを使用して E メールを送信する場合、Amazon SES は、安全な接続を確立できる受信 E メールサーバーに対してのみメッセージを送信します。受信 E メールサーバーへの安全な接続が確立できない場合、Amazon SES はメッセージを破棄します。