Amazon SES의 IAM 사용자로부터 이메일을 보낼 때 554의 ‘액세스 거부’ 오류를 해결하려면 어떻게 해야 합니까?

2분 분량
0

Amazon Simple Email Service(Amazon SES)의 AWS Identity and Access Management(IAM) 사용자로부터 이메일을 보내면 554의 ‘액세스 거부’ 오류가 발생합니다.

간략한 설명

Amazon SES의 IAM 사용자로부터 이메일을 보내면 다음 오류가 발생합니다.

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'

Amazon SES의 554 ‘액세스 거부’ 오류를 해결하려면 다음을 확인합니다.

  • 사용자는 이메일을 보낼 수 있는 적절한 정책과 액세스 권한을 가지고 있습니다.
  • 발신 권한 부여 정책은 이메일 주소 또는 도메인에 첨부되지 않습니다.
  • IAM 정책의 Resource 요소는 이메일 주소 자격 증명의 ARN으로 설정됩니다.
  • AWS Organizations 서비스 제어 정책(SCP)은 사용자에 연결되지 않습니다.

해결 방법

1.    IAM 콘솔을 엽니다.

2.    정책 요약에서 다음을 확인합니다.

IAM 사용자는 이메일을 보낼 수 있는 적절한 권한이 있습니다. 예를 들어, 사용자가 이메일 전송 API를 수행하도록 허용하려면 관련 작업(ses:SendEmail, ses:SendRawEmail, ses:SendTemplatedEmail, ses:SendBulkTemplatedEmail)을 포함해야 합니다.

IAM 사용자는 자격 증명에서 이메일을 보낼 수 있는 권한이 있습니다. IAM 사용자 정책의 Resource 요소 *로 설정하면 사용자는 모든 자격 증명에서 이메일을 보낼 수 있습니다. Resource 요소가 제한된 경우 사용자의 정책에 두 개의 정책 또는 두 개의 명령문이 있는지 확인합니다. 첫 번째 정책 또는 명령문의 Action 요소는 하나 이상의 비 이메일 전송 API로 설정해야 합니다. Resource 요소를 *로 설정해야 합니다. 두 번째 정책 또는 명령문의 Action 요소는 하나 이상의 이메일 전송 API로 설정해야 합니다. Resource 요소는 해당 자격 증명의 ARN으로 설정해야 합니다.

다음은 두 개의 명령문이 있는 예제 IAM 정책입니다. 이 정책은 사용자가 GetSendStatisticsGetSendQuota 비 이메일 전송 API를 수행할 수 있도록 허용하고, SendEmailSendRawEmail 이메일 전송 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.    사용자가 이메일을 보내지 못하도록 하는 이메일 주소 또는 도메인에 전송 권한 부여 정책이 연결되어 있는지 확인하세요.

4.    도메인 ID와 별도로 이메일 주소 ID를 확인한 경우에는 Resource 요소를 이메일 주소 ID의 ARN으로 설정해야 합니다. 자세한 내용은 Amazon SES에서 자격 증명 생성 및 확인을 참조하세요.

5.    사용자가 상속한 Organizations SCP 정책이 있는지 확인합니다. SCP는 사용자가 이메일을 보내지 못하게 할 수 있습니다. 예를 들어, 사용자가 Amazon SES를 사용하기 위해 Deny 명령문을 상속했거나 특정 AWS 또는 Amazon SES 리전에만 액세스할 수 있습니다.

참고: Amazon SES SMTP(Simple Mail Transfer Protocol) 자격 증명은 각 AWS 계정마다 고유하며 한 리전에만 적용됩니다.


관련 정보

Amazon SES의 Identity and Access Management

Amazon SES API 참조

AWS 공식
AWS 공식업데이트됨 2년 전
댓글 없음