Amazon SES の Amazon SNS 通知の設定 - Amazon Simple Email Service Classic

Amazon SES Classic のユーザーガイドです。更新プログラムや新機能は、推奨している新しい Amazon SES デベロッパーガイドに記述されています。

Amazon SES の Amazon SNS 通知の設定

Amazon Simple Notification Service (Amazon SNS)を通して、Amazon SES は、バウンス、苦情、配信を通知します。

通知は Amazon SES コンソールで設定するか、Amazon SES API を使用して設定できます。

Prerequisites

Amazon SES で Amazon SNS 通知を設定する前に、次のステップを完了します。

  1. Amazon SNS トピックを作成します。詳細については、『Amazon Simple Notification Service デベロッパーガイド』の「トピックの作成」を参照してください。

    重要

    Amazon SNS を使用してトピックを作成する場合、タイプスタンダードを選択します。(SES は FIFO タイプのトピックをサポートしていません。)

    新しい SNS トピックを作成する場合も、既存のトピックを選択する場合も、トピックに通知を発行するために SES へのアクセスを許可する必要があります。

    トピック に通知を発行するためのアクセス許可をAmazon SES に付与するには、SNS コンソールの [トピックの編集] 画面で [アクセスポリシー] を展開し、[JSON エディタ] に次の許可ポリシーを追加します。

    { "Version": "2012-10-17", "Id": "notification-policy", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "sns:Publish", "Resource": "arn:aws:sns:us-west-2:111122223333:topic_name", "Condition": { "StringEquals": { "AWS:SourceAccount": "111122223333", "AWS:SourceArn": "arn:aws:ses:us-west-2:111122223333:identity/identity_name" } } } ] }

    上のポリシー例に、以下の変更を加えます。

    • 中国や AWS GovCloud (US) などの特別なパーティションの場合は、aws の部分を対応する AWS パーティションに置き換えます。これについては、AWS 全般のリファレンスの「Amazon リソースネーム (ARN)」を参照してください。

    • us-west-2 は、SNS トピックを作成した AWS リージョンに置き換えます。

    • 111122223333 は自分の AWS アカウント ID に置き換えます。

    • topic_name は、SNS トピックの名前に置き換えます。

    • identity_name は、SNS トピックにサブスクライブしている確認済みアイデンティティ (E メールアドレスまたはドメイン) に置き換えます。

  2. 少なくとも 1 つのエンドポイントをトピックにサブスクライブします。たとえば、テキストメッセージで通知を受け取る場合は、トピックに SMS エンドポイント (携帯電話番号) をサブスクライブします。E メールで通知を受信するには、E メールエンドポイント (E メールアドレス) をトピックにサブスクライブします。

    詳細については、『Amazon Simple Notification Service デベロッパーガイド』の「作業スタート」を参照してください。

  3. (オプション) Amazon SNS トピックでサーバー側の暗号化に AWS Key Management Service ( AWS KMS ) を使用する場合は、AWS KMS キーポリシーにアクセス許可を追加する必要があります。アクセス権限を追加するには、次のポリシーを AWS KMS キーポリシーにアタッチします。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESToUseKMSKey", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*" } ] }

Amazon SES コンソールを使用した通知の設定

Amazon SES コンソールを使用して通知を設定するには

  1. Amazon SES コンソール (https://console.aws.amazon.com/ses/) を開きます。

  2. ナビゲーションペインの [Identity Management] で、[Domains] または [Email Addresses] を選択します。

  3. 確認済み送信者のリストで、通知を設定する E メールアドレスまたはドメインを選択します。

    重要

    確認済みドメイン通知設定は、同様に確認済みの E メールアドレスを除き、そのドメインの E メールアドレスから送信されるすべてのメールに適用されます。

  4. [Notifications] で、[Edit Configuration] を選択します。

  5. [SNS トピックの設定] で、Amazon SNS トピックの設定を次のように変更します。

    1. 通知を受け取るために使用する Amazon SNS トピックを選択します。複数のイベントタイプの通知を同じ Amazon SNS トピックに発行するか、異なる Amazon SNS トピックに発行することができます。

      重要

      バウンス、苦情、配信の通知に使用する Amazon SNS トピックは、Amazon SES を使用するのと同じ AWS リージョンに含まれている必要があります。

      さらに、通知を受け取るには、1 つ以上のエンドポイントをトピックにサブスクライブしている必要があります。たとえば、E メールアドレスに通知を送信する場合は、E メールエンドポイントをそのトピックにサブスクライブする必要があります。詳細については、『Amazon Simple Notification Service デベロッパーガイド』の「作業スタート」を参照してください。

      自分が所有していない Amazon SNS トピックを使用する場合は、AWS Identity and Access Management (IAM) ポリシーの設定で、その Amazon SNS トピックの Amazon リソースネーム (ARN) からの発行を許可する必要があります。

    2. Amazon SES に転送した E メールの元のヘッダーを Amazon SNS 通知に含める場合は、[Include original headers (元のヘッダーを含める)] を選択します。このオプションは、その通知タイプに Amazon SNS トピックを割り当てている場合にのみ使用できます。元の E メールヘッダーの内容については、mailAmazon SNS 通知コンテンツ オブジェクトを参照してください。

  6. (オプション) バウンスと苦情の両方で Amazon SNS トピックを選択すると、E メール通知を完全に無効にできます。バウンスや苦情の E メール通知を無効にするには、[Email Feedback Forwarding] で [Disable] を選択します。配信の通知は、Amazon SNS からのみ利用できます。

  7. [Save Config] を選択します。通知設定に対する変更は、反映されるまでに数分かかる場合があります。

設定の完了後は、バウンス、苦情、配信の通知が Amazon SNS トピックに送られるようになります。これらの通知は JavaScript Object Notation (JSON) 形式になっており、「Amazon SNS 通知コンテンツ」で説明されている構造に従っています。

バウンス、苦情、配信の通知には、Amazon SNS のスタンダードレートが課金されます。詳細については、「Amazon SNS 料金ページ」を参照してください。

注記

トピックが削除されたか、AWS アカウントにそのトピックに発行するアクセス許可がないために、Amazon SNSトピックへの発行が失敗した場合、Amazon SES はそのトピックの設定を削除します。さらに、Amazon SES が ID のバウンスと苦情の E メール通知を再度有効にし、ユーザーは変更の通知を E メールで受け取ります。トピックを使用するように複数の ID が設定されている場合、各 ID でトピックへの発行に失敗すると、各 ID のトピック設定が変更されます。

Amazon SES API を使用した通知の設定

バウンス、苦情、配信の通知は、Amazon SES API を使用して設定することもできます。次のオペレーションを使用して通知を設定します。

これらの API アクションを使用して、通知用にカスタマイズしたフロントエンドアプリケーションを作成することができます。通知に関連する API アクションの詳しい説明については、Amazon Simple Email Service API リファレンスを参照してください。

フィードバック通知のトラブルシューティング

通知が送られてこない

通知を受け取っていない場合は、通知が送信されるトピックにエンドポイントをサブスクライブしていることを確認します。E メールエンドポイントをトピックにサブスクライブすると、サブスクリプションの確認を求める E メールが届きます。E メール通知の受信を開始するには、サブスクリプションを確認する必要があります。詳細については、『Amazon Simple Notification Service デベロッパーガイド』の「作業スタート」を参照してください。

InvalidParameterValue トピックを選択する際にエラーが発生する

InvalidParameterValue エラーが発生したことを示すエラーを受け取った場合は、Amazon SNS トピックが AWS KMS を使用して暗号化されているかどうかをチェックします。AWS KMS を使って暗号化されている場合は、その AWS KMS キーのポリシーを変更する必要があります。サンプルポリシーについては、「Prerequisites」を参照してください。