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

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

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

AWS Identity and Access Management (IAM) と Amazon Simple Email Service (Amazon SES) を使用して、IAM ユーザー、グループ、またはロールで実行できる Amazon SES API アクションを指定できます。(このトピックでは、これらの事業体を総称して「 ユーザー) また、ユーザーがメールの「送信元」、「受信者」、「リターンパス」アドレスに使用できるメール アドレスを制御することもできます。

たとえば、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 アクションをコントロールするには、IAM ポリシーの Action 要素を使用します。_を設定できます。 Action エレメントから任意の Amazon SES API 名の先頭に小文字の文字列を付けることで、API アクションを実行します。 ses:。 たとえば、 Actionses:SendEmailses:GetSendStatistics、または ses:* (すべてのアクションについて)。

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

_が Action 要素は、電子メール送信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 Reference」を参照してください。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 の IAM ポリシー例

このトピックでは、特定の条件下でのみ 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" } } } ] }

受取人アドレスの制限

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

{ "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 の場合のみ、Amazon SES E メール送信 API の呼び出しをユーザーに許可します。

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

次のポリシーでは、ユーザーは バウンスを送信 API。ただし、「送信元」アドレスが bounce@example.comをご覧ください.

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

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

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

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

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

次のポリシーでは、E メールの "Return-Path" が feedback@example.com に設定されている場合のみ、Amazon SES E メール送信 API をユーザーに許可します。

{ "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 フォーラム」をご覧ください。