Amazon SES를 사용하여 인바운드 이메일을 수신한 다음 해당 이메일을 Amazon S3에 저장하려면 어떻게 해야 하나요?

4분 분량
0

Amazon Simple Email Service(Amazon SES)를 사용하여 인바운드 이메일을 수신하고 보관 또는 추가 처리를 위해 이메일을 저장하려고 합니다.

해결 방법

참고: 시작하기 전에 엔드포인트가 이메일 수신을 지원하는 AWS 리전에 있는지 확인하세요. Amazon S3 버킷을 제외하고 Amazon SES에서 이메일을 수신하는 데 사용되는 모든 AWS 리소스는 Amazon SES 엔드포인트와 동일한 AWS 리전에 있어야 합니다.

Amazon SES로 이메일 도메인 확인

이메일 수신에 사용할 도메인을 확인합니다.

이메일 수신을 위한 Amazon SES용 MX 레코드 게시

Amazon SES가 도메인의 인바운드 이메일을 수신하도록 하려면 메일 교환 레코드(MX 레코드)를 게시합니다. 도메인 DNS 구성에 Amazon SES 인바운드 수신 엔드포인트를 포함합니다.

Amazon SES의 이메일을 저장할 권한이 있는 Amazon S3 버킷 설정

1.    Amazon S3 콘솔을 엽니다.

2.    Amazon S3 버킷을 생성합니다.

3.    버킷 목록에서 버킷 이름을 선택합니다.

4.    권한 탭을 선택합니다.

5.    버킷 정책을 선택합니다.

6.    버킷 정책 편집기에서 다음 정책을 입력합니다.
AWSDOC-EXAMPLE-BUCKET을 쓰려고 하는 S3 버킷의 이름으로 바꿉니다.
111122223333을 사용자의 AWS 계정 ID로 바꿉니다. 리전을 수신 규칙을 생성하려는 AWS 리전으로 바꿉니다. rule_set_name을 수신 규칙이 포함된 규칙 세트의 이름으로 바꿉니다. receipt_rule_name을 수신 규칙의 이름으로 바꿉니다. Amazon SES에 구성된 rule_set_namereceipt_rule_name이 없는 경우, 원하는 값을 사용하여 버킷 정책을 구성할 수 있습니다. 다음 섹션에서 규칙 세트와 규칙을 만들 때 동일한 값을 사용합니다.

{
  "Version":"2012-10-17",
  "Statement":[
    {
      "Sid":"AllowSESPuts",
      "Effect":"Allow",
      "Principal":{
        "Service":"ses.amazonaws.com"
      },
      "Action":"s3:PutObject",
      "Resource":"arn:aws:s3:::AWSDOC-EXAMPLE-BUCKET/*",
      "Condition":{
        "StringEquals":{
          "AWS:SourceAccount":"111122223333",
          "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name"
        }
      }
    }
  ]
}

7.    저장을 선택합니다.
참고: 이 정책에 대한 자세한 내용은 Amazon SES에 Amazon S3 버킷에 쓸 수 있는 권한 부여를 참조하세요.

인바운드 이메일을 S3 버킷으로 보내는 Amazon SES 수신 규칙 생성

  1. Amazon SES 콘솔을 엽니다.
  2. 탐색 창의 모든 규칙 세트에서 이메일 수신을 선택합니다.
  3. 활성 규칙 세트에 규칙을 추가하려면 4단계로 진행합니다. 새 규칙 세트를 만들려면 규칙 세트 생성을 선택하고 규칙 세트 이름을 입력한 다음 규칙 세트 생성을 선택합니다.
    참고: 새 규칙 세트를 만들려면 해당 규칙 세트를 선택한 다음 활성 규칙 세트로 설정을 선택합니다. 언제든지 수신 규칙 세트 중 하나만 활성 규칙 세트가 될 수 있습니다.
  4. 활성 규칙 세트를 선택합니다.
  5. 규칙 생성을 선택합니다.
    참고: 다음 단계에서 설명하는 것과 동일한 값으로 기존 규칙을 업데이트하도록 선택할 수도 있습니다.
  6. 고유한 규칙 이름을 입력합니다. 사용 사례에 TLS 또는 스팸 및 바이러스 검사가 필요한 경우 TLS 필요 또는 스팸 및 바이러스 검사 활성화를 선택합니다. 이 규칙을 활성 규칙으로 설정하려면 활성화 확인란을 선택합니다.
  7. 다음을 선택합니다.
  8. Amazon SES가 확인된 특정 도메인으로 보내는 이메일만 저장하려면 수신자 추가 조건을 선택한 다음 이메일 주소를 수신자로 입력합니다. Amazon SES가 모든 검증된 도메인으로 보내는 이메일을 모두 저장하려면 이메일 주소를 입력하지 마세요. 그런 다음 다음을 선택합니다.
  9. 새 작업 추가를 선택한 다음 S3 버킷으로 전송을 선택합니다. 다음 단계를 완료합니다.      
    S3 버킷의 경우, 이메일을 저장하기 위해 생성한 버킷을 선택합니다.         
    객체 키 접두사에 이메일을 저장할 S3 접두사를 입력합니다. 이 필드를 비워 두면 Amazon SES가 이메일을 버킷의 루트에 저장합니다.
    (선택 사항) Amazon SES의 메시지 암호화를 선택하여 AWS Key Management Server(AWS KMS) 키를 사용하여 이메일을 암호화합니다.
    참고: 기본 루트 키가 아닌 다른 키를 사용하는 경우 AWS KMS 키를 사용하기 위한 Amazon SES 권한을 부여해야 합니다. Amazon SES는 이메일을 저장하기 위해 S3 버킷에 보내기 전에 Amazon S3 암호화 클라이언트를 사용하여 이메일을 암호화합니다. Amazon SES는 Amazon S3 서버 측 암호화를 사용하여 이메일을 암호화하지 않습니다.
  10. (선택 사항) SNS 주제에서 Amazon SES가 이메일을 S3 버킷으로 전달할 때 알림을 받을 Amazon Simple Notification Service(Amazon SNS) 주제를 선택합니다.
  11. 다음을 선택합니다.
  12. 규칙 생성을 선택합니다.

Amazon SES 규칙 테스트

  1. Amazon SES 콘솔을 엽니다.
  2. 탐색 창에서 확인된 자격 증명을 선택합니다.
  3. 확인된 도메인을 선택합니다.
  4. 테스트 이메일 전송을 선택합니다. 그런 다음 필드를 작성합니다.
    이메일 형식에서 형식 지정됨을 선택합니다.
    보낸 사람 주소에 테스트 이메일로 보낼 이메일 주소를 입력합니다.
    시나리오에서 사용자 지정을 선택합니다.
    사용자 지정 받는 사람의 경우 테스트하려는 도메인의 이메일 주소를 입력합니다.
    제목본문에 예제 이메일 텍스트를 입력합니다.
  5. 테스트 이메일 보내기를 선택합니다.
  6. Amazon S3 콘솔을 엽니다.
  7. Amazon SES 이메일을 저장하도록 구성한 버킷을 엽니다.
  8. 버킷에 전송한 테스트 이메일이 포함되어 있는지 확인합니다. 테스트 이메일이 표시되는 데 몇 분 정도 걸릴 수 있습니다.

관련 정보

Amazon SES의 인바운드 이메일이 Amazon S3 버킷에 도착하거나 저장되지 않는 이유는 무엇인가요?

Amazon SES 이메일 수신 설정

AWS 공식
AWS 공식업데이트됨 일 년 전