Amazon SES で IAM ユーザーから E メールを送信するときに発生する 554「Access Denied」(アクセス拒否) エラーを解決するにはどうすればよいですか?

所要時間2分
0

Amazon Simple Email Service (Amazon SES) の AWS Identity and Access Management (IAM) ユーザーから E メールを送信すると、554「Access Denied」(アクセス拒否) エラーが表示されます。

簡単な説明

Amazon SES で IAM ユーザーから E メールを送信すると、次のエラーが表示されます。

554 Access denied: User arn:aws:iam::123456789012:user/iam-user-name' is not authorized to perform ses:SendRawEmail' on resource `arn:aws:ses:eu-west-1:123456789012:identity/example.com' (554 アクセス拒否: ユーザー「arn:aws:iam::123456789012:user/iam-user-name」は、リソース「arn:aws:ses:eu-west-1:123456789012:identity/example.com」で「ses:SendRawEmail」を実行する権限がありません)

Amazon SES の 554「Access Denied」(アクセス拒否) エラーをトラブルシューティングするには、次を確認してください。

  • ユーザーが E メールを送信するための適切なポリシーとアクセス権を備えている。
  • 送信承認ポリシーがメールアドレスまたはドメインにアタッチされていない。
  • IAM ポリシーの [Resource] (リソース) 要素がメールアドレス ID の ARN に設定されている。
  • AWS Organizations のサービスコントロールポリシー (SCP) がユーザーにアタッチされていない。

解決方法

1.    IAM コンソールを開きます。

2.    [Policy summary] (ポリシーの概要) で、次を確認します。

IAM ユーザーに E メールを送信する適切な許可があること。例えば、ユーザーが email-sending API を実行することを許可するには、関連するアクション (ses:SendEmailses:SendRawEmailses:SendTemplatedEmailses:SendBulkTemplatedEmail) を含める必要があります。

ID から E メールを送信するための適切なアクセス権が IAM ユーザーに付与されていること。IAM ユーザーポリシーの [Resource] (リソース) 要素を * に設定すると、すべての ID から E メールを送信するためのアクセス権がユーザーに付与されます。[Resource] (リソース) 要素が制限されている場合は、ユーザーに 2 つのポリシーがあること、または 1 つのポリシーに 2 つのステートメントがあることを確認します。最初のポリシーまたはステートメントの [Action] (アクション) 要素は、non-email-sending API の 1 つ以上に設定する必要があります。[Resource] (リソース) 要素は * に設定する必要があります。2 つ目のポリシーまたはステートメントの [Action] (アクション) 要素は、email-sending API の 1 つ以上に設定する必要があります。[Resource] (リソース) 要素は ID の ARN に設定する必要があります。

2 つのステートメントを含む IAM ポリシーの例を次に示します。このポリシーでは、ユーザーが GetSendStatisticsGetSendQuota の non-email-sending API を実行することを許可し、SendEmailSendRawEmail email-sending API はドメインからのみ送信するように制限しています。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "ses:GetSendStatistics",
        "ses:GetSendQuota"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "ses:SendEmail",
        "ses:SendRawEmail"
      ],
      "Resource": "arn:aws:ses:eu-west-1:123456789012:identity/example.com"
    }
  ]
}

3.    メールアドレスまたはドメインに、ユーザーによる E メールの送信を妨げている送信承認ポリシーがアタッチされていないか確認します。

4.    メールアドレス ID をドメイン ID とは別に検証した場合は、[Resource] (リソース) 要素をメールアドレス ID の ARN に設定する必要があります。詳細については、「Amazon SES の ID の作成と検証」を参照してください。

5.    ユーザーが継承した Organizations の SCP ポリシーがあるかどうかを確認します。SCP は、ユーザーによる E メールの送信を妨げる場合があります。例えば、ユーザーが Amazon SES を使用する [Deny] (拒否) ステートメントを継承した場合や、特定の AWS または Amazon SES リージョンのみにアクセスできる場合などです。

注: Amazon SES Simple Mail Transfer Protocol (SMTP) の認証情報は各 AWS アカウントに固有で、1 つのリージョンに固有です。


関連情報

Amazon SES での Identity and Access Management

Amazon SES API リファレンス

コメントはありません

関連するコンテンツ