アカウントレベルのサプレッションリストの使用 - Amazon Simple Email Service

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

アカウントレベルのサプレッションリストの使用

Amazon SES には、現在の リージョンの アカウントに適用されるAWSアカウントレベルのサプレッションリストAWSが含まれています。このサプレッションリストを使用すると、以前にバウンスイベントや苦情イベントが発生したアドレスへの E メール送信を防止できます。アカウントレベルのサプレッションリストを設定する場合、アドレスがハードバウンスになったとき、苦情が発生したとき、またはその両方の場合に、アドレスをリストに追加するかどうかを指定します。API v2 を使用すると、アカウントレベルのサプレッションリストから個別アドレスまたは一括アドレスを手動で追加または削除できます。Amazon SES

注記

アドレスを一括で追加または削除するには、本稼働アクセスが必要です。サンドボックスの詳細については、「」を参照してください。Amazon SES サンドボックス外への移動.

Amazon SES には、グローバルサプレッションリストも含まれています。詳細については、「」を参照してください。Amazon SES グローバルサプレッションリストの使用.

アカウントレベルのサプレッションリストに関する考慮事項

アカウントレベルのサプレッションリストを使用する場合は、次の要素を考慮する必要があります。

  • 2019 年 11 月 25 日以降に Amazon SES の使用を開始した場合、アカウントはバウンスと苦情の両方に対してアカウントレベルのサプレッションリストをデフォルトで使用します。この日付より前に Amazon SES の使用を開始した場合は、PutAccountSuppressionAttributes API の Amazon SES オペレーションを使用してこの機能を有効にする必要があります。

  • アカウントレベルのサプレッションリストに含まれているアドレスにメッセージを送信しようとすると、Amazon SES はメッセージを受け付けますが、送信はしません。

  • Amazon SES は、アカウントレベルのサプレッションリストのアドレスに送信したメッセージを、アカウントのバウンスレートに対してカウントしません。

  • Amazon SES は、アカウントレベルのサプレッションリストのアドレスに送信したメッセージを、毎日の送信クォータに対してカウントします。

  • アカウントレベルのサプレッションリストの E メールアドレスは、 API v2 の DeleteSuppressedDestinationAmazon SES オペレーションを使用して削除するまで、そこに残ります。

  • アカウントのメール送信機能が一時停止されている場合、Amazon SES はアカウントレベルのサプレッションリストのアドレスを 90 日後に自動的に削除します。この 90 日の期間が終了する前にアカウントのメール送信機能が復元された場合、アカウントレベルのサプレッションリストのアドレスは削除されません。

  • Gmail では、 に苦情データが提供されません。Amazon SES. 受取人が Gmail ウェブクライアントの [迷惑メール] ボタンを使用して、受信したメールを迷惑メールとして報告した場合、アカウントレベルのサプレッションリストには追加されません。

  • アカウントが Amazon SES サンドボックスにある場合は、アカウントレベルのサプレッションリストを有効にすることができます。ただし、アカウントがサンドボックスから削除されるまでは、PutSuppressedDestination または CreateImportJob オペレーションを使用できません。サンドボックスの詳細については、「」を参照してください。Amazon SES サンドボックス外への移動.

  • アカウントレベルのサプレッションリストを使用すると、Amazon SES はハードバウンスを引き起こすアドレスもグローバルサプレッションリストに追加します。

アカウントレベルのサプレッションリストの有効化

API v2 で PutAccountSuppressionAttributes オペレーションを使用して、アカウントレベルのサプレッションリストを有効にして設定できます。Amazon SES を使用すると、この設定をすばやく簡単に設定できます。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用してアカウントレベルのサプレッションリストを設定するにはAWS CLI

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

    Linux, macOS, or Unix
    aws sesv2 put-account-suppression-attributes \ --suppressed-reasons BOUNCE COMPLAINT
    Windows
    aws sesv2 put-account-suppression-attributes ` --suppressed-reasons BOUNCE COMPLAINT

    アカウントレベルのサブレッションリストを有効にするには、suppressed-reasons パラメータに少なくとも 1 つの理由を指定する必要があります。前の例に示すように、BOUNCE または COMPLAINT、または両方を指定することもできます。

設定セットに対するアカウントレベルのサプレッションリストの有効化

特定の 設定セット.にのみ適用されるように、アカウントレベルのサプレッションを設定することもできます。この操作を行うと、バウンスイベントまたは苦情イベントの原因となった E メールを送信したときに設定セットを指定した場合にのみ、アドレスがサプレッションリストに追加されます。

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用して設定セット用にアカウントレベルのサプレッションリストを設定するにはAWS CLI

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

    Linux, macOS, or Unix
    aws sesv2 put-configuration-set-suppression-options \ --configuration-set-name configSet \ --suppressed-reasons BOUNCE COMPLAINT
    Windows
    aws sesv2 put-configuration-set-suppression-options ` --configuration-set-name configSet ` --suppressed-reasons BOUNCE COMPLAINT

    前の例では、configSet アカウントレベルのサプレッションリストを使用する設定セットの名前を持つ 。

アカウントレベルのサプレッションリストに個々の E メールアドレスを手動で追加する

API v2 で PutSuppressedDestination オペレーションを使用することで、アカウントレベルのサプレッションリストに個々のアドレスを手動で追加できます。Amazon SESアカウントレベルのサプレッションリストに追加できるアドレスの数に制限はありません。

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用してアカウントレベルのサプレッションリストにアドレスを手動で追加するにはAWS CLI

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

    Linux, macOS, or Unix
    aws sesv2 put-suppressed-destination \ --email-address recipient@example.com \ --reason BOUNCE
    Windows
    aws sesv2 put-suppressed-destination ` --email-address recipient@example.com ` --reason BOUNCE

    前の例では、recipient@example.com アカウントレベルのサプレッションリストに追加する E メールアドレスを持つ BOUNCE 。サプレッションリストにアドレスを追加する理由 (許容値は BOUNCECOMPLAINT) を示します。

E メールアドレスをアカウントレベルのサプレッションリストに一括で追加する

最初に連絡先リストを Amazon S3 オブジェクトにアップロードし、その後に API v2 で CreateImportJob オペレーションを使用して、アドレスを一括で追加できます。Amazon SES

注記

アカウントレベルのサプレッションリストに追加できるアドレスの数に制限はありませんが、API コールあたりの Amazon S3 オブジェクト内のアドレス数には 100,000 の一括追加制限があります。

E メールアドレスをアカウントレベルのサプレッションリストに一括で追加するには、以下の手順を実行します。

  • CSV または JSON 形式の Amazon S3 オブジェクトにアドレスリストをアップロードします。

    アドレスを追加するための CSV 形式の例:

    recipient1@example.com,BOUNCE

    recipient2@example.com,COMPLAINT

    改行で区切られた JSON ファイルのみがサポートされています。この形式で、各行は個々のアドレス定義を含む完全な JSON オブジェクトです。

    アドレスを追加するための JSON 形式の例:

    {"emailAddress":"recipient1@example.com","reason":"BOUNCE"}

    {"emailAddress":"recipient2@example.com","reason":"COMPLAINT"}

    前述の例で、recipient1@example.com および recipient2@example.com アカウントのレベルのサプレッションリストに追加する E メールアドレスに置き換えます。アドレスをサプレッションリストに追加する理由は、BOUNCECOMPLAINT のいずれも許容されます。

  • に Amazon SES オブジェクトの読み取りアクセス許可を付与します。Amazon S3

    バケットに適用された場合、次のポリシーによって、そのバケットを読み取るためのアクセス許可が Amazon S3 に付与されます。Amazon SESバケットへのポリシーのアタッチの詳細については、Amazon S3 の「バケットポリシーとユーザーポリシーの使用」を参照してください。Amazon Simple Storage Service 開発者ガイド

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESGet", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::BUCKET-NAME/OBJECT-NAME", "Condition": { "StringEquals": { "aws:Referer": "AWSACCOUNTID" } } } ] }
  • AWS KMS マスターキーを使用するためのアクセス許可を Amazon SES に付与します。

    オブジェクトが AWS KMS キーで暗号化されている場合は、AWS KMS キーを使用するためのアクセス許可を Amazon S3Amazon SES Amazon SES は、デフォルトのマスターキーではなく、カスタムマスターキーからのアクセス許可のみを取得できます。Amazon SESキーのポリシーにステートメントを追加することで、カスタムのマスターキーを使用するためのアクセス許可を Amazon SES に付与する必要があります。

    次のポリシーステートメントをキーポリシーに貼り付けて、カスタムのマスターキーの使用を Amazon SES に許可します。

    { "Sid": "AllowSESToDecrypt", "Effect": "Allow", "Principal": { "Service":"ses.amazonaws.com" }, "Action": [ "kms:Decrypt", ], "Resource": "*" }
  • API v2 で CreateImportJob オペレーションを使用します。Amazon SES

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用してアカウントレベルのサプレッションリストに一括アドレスを手動で追加するにはAWS CLI

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

    Linux, macOS, or Unix
    aws sesv2 create-import-job \ --import-destination "{\"SuppressionListDestination\": {\"SuppressionListImportAction\":\"PUT\"}}" \ --import-data-source "{\"S3Url\": \"s3://s3bucket/s3object\",\"DataFormat\": \"CSV\"}"
    Windows
    aws sesv2 create-import-job ` --import-destination "{\"SuppressionListDestination\": {\"SuppressionListImportAction\":\"PUT\"}}" ` --import-data-source "{\"S3Url\": \"s3://s3bucket/s3object\",\"DataFormat\": \"CSV\"}"

    前述の例で、s3bucket および s3object バケット名と Amazon S3 オブジェクト名に置き換えます。Amazon S3

アカウントレベルのサプレッションリストにあるアドレスの一覧表示

API v2 の ListSuppressedDestinations オペレーションを使用すると、アカウントのアカウントレベルのサプレッションリストにあるすべての E メールアドレスを一覧表示できます。Amazon SES

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

アカウントレベルのサプレッションリストにあるすべての E メールアドレス一覧表示するには

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

    aws sesv2 list-suppressed-destinations

上記のコマンドは、アカウントのアカウントレベルのサプレッションリストにあるすべての E メールアドレスを返します。出力は以下の例のようになります。

{ "SuppressedDestinationSummaries": [ { "EmailAddress": "recipient2@example.com", "Reason": "COMPLAINT", "LastUpdateTime": 1586552585.077 }, { "EmailAddress": "recipient0@example.com", "Reason": "COMPLAINT", "LastUpdateTime": 1586552666.613 }, { "EmailAddress": "recipient1@example.com", "Reason": "BOUNCE", "LastUpdateTime": 1586556479.141 } ] }

オプションを使用すると、特定の日付のStartDateにリストに追加された E メールアドレスのみを表示できます。

特定の日付の後にアカウントレベルのサプレッションリストに追加されたアドレスを一覧表示するには

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

    aws sesv2 list-suppressed-destinations --start-date 1604394130

    前述のコマンドで、1604394130 開始日の Unix タイムスタンプに置き換えます。

また、EndDate オプションを使用すると、特定の日付のにリストに追加された E メールアドレスのみを表示することもできます。

特定の日付の前にアカウントレベルのサプレッションリストに追加されたアドレスを一覧表示するには

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

    aws sesv2 list-suppressed-destinations --end-date 1611126000

    前述のコマンドで、1611126000 終了日の Unix タイムスタンプに置き換えます。

Linux, macOS, or Unix コマンドラインで、組み込みの grep ユーティリティを使用して、特定のアドレスまたはドメインを検索することもできます。

アカウントレベルのサプレッションリストで特定のアドレスを検索するには

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

    aws sesv2 list-suppressed-destinations | grep -A2 'example.com'

    前述のコマンドで、example.com 検索する文字列 (アドレスやドメインなど) を持つ 。

アカウントレベルのサプレッションリストからの E メールアドレスの削除

アカウントのサプレッションリストにアドレスが含まれていても、そのアドレスをリストから除外する場合は、 API v2 の DeleteSuppressedDestinationAmazon SES オペレーションを使用して手動で削除できます。

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用してアカウントレベルのサプレッションリストからアドレスを削除するにはAWS CLI

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

    Linux, macOS, or Unix
    aws sesv2 delete-suppressed-destination \ --email-address recipient@example.com
    Windows
    aws sesv2 delete-suppressed-destination ` --email-address recipient@example.com

    前の例では、recipient@example.com アカウントレベルのサプレッションリストから削除する E メールアドレスを持つ 。

アカウントレベルのサプレッションリストからの E メールアドレスの一括削除

コンタクトリストを Amazon S3 オブジェクトにアップロードし、その後に API v2 の CreateImportJobAmazon SES オペレーションを使用することにより、一括でアドレスを手動で削除できます。

注記

アカウントレベルのサプレッションリストから削除できるアドレスの数に制限はありませんが、API コールあたりの Amazon S3 オブジェクト内のアドレス数には 10,000 という一括削除制限があります。

アカウントレベルのサプレッションリストから E メールアドレスを一括で削除するには、次のステップを実行します。

  • CSV または JSON 形式の Amazon S3 オブジェクトにアドレスリストをアップロードします。

    アドレスを削除するための CSV 形式の例:

    recipient3@example.com

    改行で区切られた JSON ファイルのみがサポートされています。この形式で、各行は個々のアドレス定義を含む完全な JSON オブジェクトです。

    アドレスを追加するための JSON 形式の例:

    {"emailAddress":"recipient3@example.com"}

    前述の例で、recipient3@example.com アカウントレベルのサプレッションリストから削除する E メールアドレスとともに入力します。

  • オブジェクトの読み取り権限を Amazon SES に付与します。Amazon S3

    バケットに適用された場合、次のポリシーによって、そのバケットを読み取るためのアクセス許可が Amazon S3 に付与されます。Amazon SESバケットへのポリシーのアタッチの詳細については、Amazon S3 の「バケットポリシーとユーザーポリシーの使用」を参照してください。Amazon Simple Storage Service 開発者ガイド

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESGet", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::BUCKET-NAME/OBJECT-NAME", "Condition": { "StringEquals": { "aws:Referer": "AWSACCOUNTID" } } } ] }
  • AWS KMS マスターキーを使用するためのアクセス許可を Amazon SES に付与します。

    オブジェクトが AWS KMS キーで暗号化されている場合は、AWS KMS キーを使用するためのアクセス許可を Amazon S3Amazon SES Amazon SES は、デフォルトのマスターキーではなく、カスタムマスターキーからのアクセス許可のみを取得できます。Amazon SESキーのポリシーにステートメントを追加することで、カスタムのマスターキーを使用するためのアクセス許可を Amazon SES に付与する必要があります。

    次のポリシーステートメントをキーポリシーに貼り付けて、カスタムのマスターキーの使用を Amazon SES に許可します。

    { "Sid": "AllowSESToDecrypt", "Effect": "Allow", "Principal": { "Service":"ses.amazonaws.com" }, "Action": [ "kms:Decrypt", ], "Resource": "*" }
  • API v2 で CreateImportJob オペレーションを使用します。Amazon SES

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用してアカウントレベルのサプレッションリストから一括アドレスを手動で削除するにはAWS CLI

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

    Linux, macOS, or Unix
    aws sesv2 create-import-job \ --import-destination "{\"SuppressionListDestination\": {\"SuppressionListImportAction\":\"DELETE\"}}" \ --import-data-source "{\"S3Url\": \"s3://s3bucket/s3object\",\"DataFormat\": \"CSV\"}"
    Windows
    aws sesv2 create-import-job ` --import-destination "{\"SuppressionListDestination\": {\"SuppressionListImportAction\":\"DELETE\"}}" ` --import-data-source "{\"S3Url\": \"s3://s3bucket/s3object\",\"DataFormat\": \"CSV\"}"

    前述の例で、s3bucket および s3object バケット名と Amazon S3 オブジェクト名に置き換えます。Amazon S3

アカウントのインポートジョブのリストを表示する

API v2 の ListImportJobs オペレーションを使用すると、アカウントのアカウントレベルのサプレッションリストにあるすべての E メールアドレスを一覧表示できます。Amazon SES

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

アカウントのすべてのインポートジョブのリストを表示するには

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

    aws sesv2 list-import-jobs

上記のコマンドは、アカウントのすべてのインポートジョブを返します。出力は以下の例のようになります。

{ "ImportJobs": [ { "CreatedTimestamp": 1596175615.804, "ImportDestination": { "SuppressionListDestination": { "SuppressionListImportAction": "PUT" } }, "JobStatus": "COMPLETED", "JobId": "755380d7-fbdb-4ed2-a9a3-06866220f5b5" }, { "CreatedTimestamp": 1596134732.398, "ImportDestination": { "SuppressionListDestination": { "SuppressionListImportAction": "DELETE" } }, "JobStatus": "COMPLETED", "JobId": "076683bd-a7ee-4a40-9754-4ad1161ba8b6" }, { "CreatedTimestamp": 1596645918.134, "ImportDestination": { "SuppressionListDestination": { "SuppressionListImportAction": "PUT" } }, "JobStatus": "COMPLETED", "JobId": "6e261869-bd30-4b33-b1f2-9e035a83a395" } ] }

アカウントのインポートジョブに関する情報の取得

アカウントのインポートジョブに関する情報は、 API v2 の GetImportJobAmazon SES オペレーションを使用して取得できます。

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

アカウントのインポートジョブに関する情報を取得するには

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

    aws sesv2 get-import-job --job-id JobId

上記のコマンドは、アカウントのインポートジョブに関する情報を返します。出力は以下の例のようになります。

{ "ImportDataSource": { "S3Url": "s3://bucket/object", "DataFormat": "CSV" }, "ProcessedRecordsCount": 2, "FailureInfo": { "FailedRecordsS3Url": "s3presignedurl" }, "JobStatus": "COMPLETED", "JobId": "jobid", "CreatedTimestamp": 1597251915.243, "FailedRecordsCount": 1, "ImportDestination": { "SuppressionListDestination": { "SuppressionListImportAction": "PUT" } }, "CompletedTimestamp": 1597252002.583 }

アカウントレベルのサプレッションリストの無効化

API v2 で PutAccountSuppressionAttributes オペレーションを使用すると、Amazon SES 属性から値を削除することで、アカウントレベルのサプレッションリストを事実上無効にできます。suppressed-reasons

注記

次の手順では、 がインストール済みであるものとします。AWS CLI. AWS CLI のインストールと設定についての詳細は、AWS Command Line Interface ユーザーガイド.を参照してください。

を使用してアカウントレベルのサプレッションリストを無効にするにはAWS CLI

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

    aws sesv2 put-account-suppression-attributes --suppressed-reasons