Amazon SES へのアクセスのコントロール - Amazon Simple Email Service

このガイドは、Amazon SES のクラシックコンソール(V1)を反映しています。Amazon SES 用の新しいコンソール (V2) については、新しい Amazon Simple Email Service 開発者ガイド

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

Amazon SES へのアクセスのコントロール

AWS Identity and Access Management (IAM) と Amazon Simple Email Service (Amazon SES) を使用して、IAM ユーザー、グループ、またはロールで実行できる Amazon SES API アクションを指定できます。(このトピックでは、これらのエンティティをまとめて「ユーザー」と呼びます)。ユーザーが「From」、受取人、「Return-Path」の E メールアドレスに使用できる E メールアドレスをコントロールすることもできます。

たとえば、組織内のユーザーは E メールを送信することを許可しますが、送信統計の確認などの管理作業を実行することは許可しない IAM ポリシーを作成できます。別の例として、ユーザーが特定の「From」アドレスを使用している場合のみ、アカウントから Amazon SES を介して E メールを送信することを許可するポリシーを作成できます。

IAM を使用するには、IAM ポリシー (明示的にアクセス権限を定義するドキュメント) を定義し、ユーザーにポリシーをアタッチします。IAM ポリシーを作成する方法については、「」を参照してください。IAM ユーザーガイド。ポリシーで設定した制限を適用する以外に、ユーザーが Amazon SES を操作する方法や Amazon SES がリクエストを実行する方法に変更はありません。

注記

送信承認ポリシーを使用することで、Amazon SES へのアクセスを制御することもできます。IAM ポリシーは個々の IAM ユーザーが実行できる操作を制限しますが、送信承認ポリシーは個々の検証済みアイデンティティの使用方法を制限します。さらに、クロスアカウントアクセスを許可できるのは送信承認ポリシーのみです。送信承認の詳細については、「Amazon SES での送信承認の使用」を参照してください。

既存の IAM ユーザーに対して Amazon SES SMTP 認証情報を生成する方法については、「」を参照してください。Amazon SES SMTP 認証情報の取得

Amazon SES にアクセスするための IAM ポリシーの作成

このセクションでは、特に Amazon SES で IAM ポリシーを使用する方法を説明します。IAM ポリシーを作成する方法については、「」を参照してください。IAM ユーザーガイド

Amazon SES で IAM を使用する理由は次の 3 つです。

  • E メール送信アクションを制限するため。

  • ユーザーが送信する E メールの「From」、受取人、「Return-Path」のアドレスを制限するため。

  • ユーザーが使用を承認された API の呼び出しを許可される期間など、API の使用の一般的な側面をコントロールするため。

アクションの制限

ユーザーが実行できる Amazon SES アクションを制御するには、Action要素です。設定することができます。Action要素をすべての Amazon SES API アクションに追加するには、API 名の先頭に小文字の文字列を付ける必要があります。ses:。たとえば、設定することができますActionses:SendEmailses:GetSendStatistics, またはses:*(すべてのアクションを表す)。

次に、Action に応じて、次のように Resource 要素を指定します。

そのファイルにAction要素では、E メール送信 API (つまり、ses:SendEmailおよび/または/ses:SendRawEmail):

  • ユーザーが AWS アカウントの任意の ID から送信できるようにするには、Resource を * に設定します。

  • ユーザーの送信元のアイデンティティを制限するには、Resource をユーザーに使用を許可するアイデンティティの ARN に設定します。

そのファイルにAction要素により、すべての API へのアクセスが許可されます。

  • ユーザーの送信元のアイデンティティを制限しない場合、Resource を * に設定します。

  • ユーザーの送信元のアイデンティティを制限する場合、2 つのポリシー (または、1 つのポリシー内に 2 つのステートメント) を作成する必要があります。

    • Action が、許可される E メール送信以外の API の明示的なリストに設定され、Resource が * に設定されているポリシー

    • Action が E メール送信 API (ses:SendEmailses:SendRawEmail) のいずれかに設定され、Resource がユーザーに使用を許可するアイデンティティの ARN に設定されたポリシー

使用可能な Amazon SES アクションのリストについては、Amazon Simple Email Service API リファレンスおよびAmazon Simple Email Service API v2 リファレンス。IAM ユーザーが SMTP インターフェイスを使用する場合、以下のアクセスを許可する必要があります。ses:SendRawEmailを最低限使用してください。

E メールアドレスの制限

ユーザーを特定の E メールアドレスに制限する場合、Condition ブロックを使用できます。左Conditionブロックでは、条件キーを使用して条件を指定します。IAM ユーザーガイド。条件キーを使用して、次の E メールアドレスをコントロールできます。

注記

これらの E メールアドレス条件キーは、以下の表に記載された API にのみ適用されます。

条件キー

説明

API

ses:Recipients

受取人アドレスを制限します。To:、"CC"、"BCC" アドレスが含まれます。

SendEmail, SendRawEmail

ses:FromAddress

「From」アドレスを制限します。

SendEmail, SendRawEmail, SendBounce

ses:FromDisplayName

表示名として使用される「From」アドレスを制限します。

SendEmail, SendRawEmail

ses:FeedbackAddress

"Return-Path" アドレス (E メールのフィードバック転送によりバウンスや苦情を送信できるアドレス) を制限します。E メールのフィードバック転送の詳細については、「E メールで送信された Amazon SES 通知」を参照してください。

SendEmail, SendRawEmail

一般的な API の使用の制限

条件で AWS 全体のキーを使用することで、ユーザーが API にアクセスを許可される日時のような側面に基づいて Amazon SES へのアクセスを制限できます。Amazon SES が実装する AWS 全体のポリシーキーは次のキーに限られます。

  • aws:CurrentTime

  • aws:EpochTime

  • aws:SecureTransport

  • aws:SourceIp

  • aws:UserAgent

これらのキーの詳細については、IAM ユーザーガイド

Amazon SES の例

このトピックでは、特定の条件下でのみ、Amazon SES へのユーザーアクセスを許可するポリシーの例を示します。

すべての Amazon SES アクションへのフルアクセスを許可

次のポリシーでは、任意の Amazon SES アクションを呼び出すことをユーザーに許可します。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:*" ], "Resource":"*" } ] }

E メール送信アクションへのアクセスのみを許可

次のポリシーでは、ユーザーが Amazon SES を使用して E メールを送信することを許可しますが、Amazon SES 送信統計へのアクセスなどの管理作業の実行をユーザーに許可しません。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*" } ] }

送信期間の制限

次のポリシーでは、2018 年の 9 月中に限り、Amazon SES E メール送信 API の呼び出しをユーザーに許可します。

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "DateGreaterThan":{ "aws:CurrentTime":"2018-08-31T12:00Z" }, "DateLessThan":{ "aws:CurrentTime":"2018-10-01T12:00Z" } } } ] }

受取人アドレスの制限

次のポリシーでは、ユーザーが Amazon SES E メール送信 API を呼び出すことを許可しますが、ドメイン内の受信者アドレスに対してのみexample.com

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "ForAllValues:StringLike":{ "ses:Recipients":[ "*@example.com" ] } } } ] }

"From" アドレスの制限

次のポリシーでは、「From」アドレスがmarketing@example.com

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"marketing@example.com" } } } ] }

次のポリシーでは、ユーザーがSendBounceAPI を使用しますが、「From」アドレスがbounce@example.com

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendBounce" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"bounce@example.com" } } } ] }

E メール送信者の表示名の制限

次のポリシーでは、「From」アドレスの表示名に「」が含まれている場合のみ、Amazon SES E メール送信 API の呼び出しをユーザーに許可します。マーケティング

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringLike":{ "ses:FromDisplayName":"Marketing" } } } ] }

バウンスや苦情のフィードバックの制限と送信先

次のポリシーでは、E メール送信 API の呼び出しをユーザーに許可しますが、E メールの「Return-Path」がfeedback@example.com

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FeedbackAddress":"feedback@example.com" } } } ] }

Amazon SES に関連するさまざまなトピックに関する情報と議論については、AWS メッセージングとターゲティングのブログ。質問を参照して投稿するには、Amazon SES フォーラム