Amazon SES에서 특정 도메인 또는 이메일 주소로부터의 이메일을 차단하려면 어떻게 해야 합니까?
Amazon Simple Email Service(Amazon SES) ID가 특정 도메인이나 이메일 주소로부터의 이메일을 수신하고 싶지 않습니다.
해결 방법
Amazon SES ID로 이메일을 보내지 않도록 특정 도메인이나 이메일 주소를 차단하려면 다음 단계를 완료하십시오.
-
Lambda 콘솔을 엽니다.
참고: Lambda 함수는 Amazon SES에서 사용하는 것과 동일한 AWS 리전에 있어야 합니다. -
**Create function(함수 생성)**을 선택합니다.
-
**Author from scratch(새로 작성)**를 선택합니다.
-
**Function Name(함수 이름)**에 함수의 이름을 입력합니다. 예를 들어, SESReceiptRule을 입력할 수 있습니다.
-
**Runtime(런타임)**은 Node.js 20.x를 선택합니다.
-
**Change default execution role(기본 실행 역할 변경)**에서 **Execution Role(실행 역할)**에 **Create a new role with basic Lambda permissions(기본 Lambda 권한으로 새 역할 생성)**를 선택합니다.
-
**Create function(함수 생성)**을 선택합니다.
-
**Code source(코드 소스)**에서 다음 코드를 입력합니다.
// Copyright 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: MIT-0 'use strict'; export const handler = async (event) => { console.log('Blocking email filter starting'); const sesNotification = event.Records[0].ses; const messageId = sesNotification.mail.messageId; const receipt = sesNotification.receipt; const mail = sesNotification.mail; // Convert the environment variable into array. Clean spaces from it. const blockingListString = process.env.blockingList; const blockingListArray = blockingListString.replace(/\s/g, '').split(","); // Check if the mail source matches with any of the email addresses or domains defined in the environment variable const isListed = () => { return blockingListArray.some(item => mail.source.endsWith(item)); }; console.log('Processing message:', messageId); // Processing the message if (isListed()) { console.log('Rejecting messageId: ', messageId, ' - Source: ', mail.source, ' - Recipients: ', receipt.recipients, ' - Subject: ', mail.commonHeaders['subject']); return { disposition: 'STOP_RULE_SET' }; } else { console.log('Accepting messageId:', messageId, ' - Source: ', mail.source, ' - Recipients: ', receipt.recipients, ' - Subject: ', mail.commonHeaders['subject']); return { disposition: 'CONTINUE' }; } };
-
**Environment variables(환경 변수)**의 **Key(키)**에 blockingList를 입력합니다.
참고: 환경 변수를 무제한으로 생성할 수 있습니다. 하지만 세트의 총 크기는 4KB를 초과할 수 없습니다. 자세한 내용은 Lambda 환경 변수 생성을 참조하십시오. -
blockingList 값에는 차단하려는 이메일 주소 및 도메인의 쉼표로 구분한 목록을 입력합니다. 예를 들어 “example.com, ”을 입력합니다.
**참고:**이메일 주소 및 도메인 목록을 편집하기 위해 Lambda 함수 코드를 변경할 필요가 없습니다. -
****Save(저장)를 선택합니다.
Amazon SES 수신 규칙 생성
다음 단계를 완료합니다.
- Amazon SES 콘솔을 엽니다.
- 탐색 창에서 **Email Receiving(이메일 수신)**을 선택합니다.
- **Create a Rule Set(규칙 세트 생성)**를 선택하고 규칙 세트 이름을 입력한 다음 **Create a Rule Set(규칙 세트 생성)**를 선택합니다. 또는 기존 활성 규칙 세트를 선택합니다.
참고: 새 규칙 세트를 생성하려면 규칙 세트를 선택한 다음 **Set as Active Rule Set(활성 규칙 세트로 설정)**를 선택합니다. - **View Active Rule Set(활성 규칙 세트 보기)**를 선택합니다.
- **Create Rule(규칙 생성)**을 선택합니다.
참고: 기존 규칙을 업데이트할 수도 있습니다. - **Rule name(규칙 이름)**에 규칙 이름을 입력합니다. 이후 다음 필드를 작성합니다.
**Status(상태)**에서 **Enabled(활성화)**를 선택합니다.
(선택 사항) Transport Layer Security(TLS) 또는 스팸 및 바이러스 검사를 구성합니다. - **Next(다음)**를 선택합니다.
- **Recipient conditions(수신자 조건)**에서 **Add new recipient condition(새 수신자 조건 추가)**을 선택합니다. Amazon SES ID와 연결된 이메일 주소 또는 도메인을 입력합니다.
중요: 이메일을 수신하지 않으려는 이메일 주소 또는 도메인을 입력하십시오. 이메일을 차단하려는 이메일 주소 또는 도메인은 입력하지 마십시오. 예를 들어, Amazon SES ID가 이메일 주소 "“을 사용하는데 “example.com”에서 오는 이메일을 차단하려면 "“을 입력하십시오. - **Next(다음)**를 선택합니다.
- **Add actions(작업 추가)**의 **Add new action(새 작업 추가)**에서 **Invoke AWS Lambda function(AWS Lambda 함수 호출)**을 선택합니다. 이후 필드를 작성합니다.
**Lambda function(Lambda 함수)**에서 함수를 선택합니다.
Invocation type(호출 유형)에서 **RequestResponse invocation(RequestResponse 호출)**을 선택합니다.
(선택 사항) SNS 주제를 구성합니다. - **Next Step(다음 단계)**을 선택합니다.
- **Create Rule(규칙 생성)**을 선택합니다.
참고: Missing Permissions(권한 누락) 대화 상자에 “unable to access the Lambda function” 메시지가 표시되면 Amazon SES에 함수에 대한 권한이 필요합니다. **Add permissions(권한 추가)**를 선택하여 필요한 권한을 구성합니다.
함수의 CloudWatch 로그 확인
이메일이 차단되었는지 확인하려면 다음 단계를 완료하십시오.
- Amazon CloudWatch 콘솔을 엽니다.
- 탐색 창에서 **Logs(로그)**를 선택합니다.
- 로그 그룹 목록에서 Lambda 함수의 로그 그룹을 선택합니다. 예를 들어 /aws/lambda/name_of_your_function을 선택합니다.
- 확인하려는 로그 스트림을 선택합니다. 로그 스트림에는 Lambda 함수가 처리하고 있는 이메일 메시지와 도메인이 표시됩니다.
로그 스트림 예제:14:08:25 START RequestId: aa939984-1b9b-11e7-83d2-efc6877bdc9b Version: $LATEST 14:08:25 2017-04-07T14:08:25.957Z aa939984-1b9b-11e7-83d2-efc6877bdc9b Blocking email filter starting 14:08:25 2017-04-07T14:08:25.958Z aa939984-1b9b-11e7-83d2-efc6877bdc9b Processing message: jc0iurgrtkrsrs7f5pk0rsmf4r3q0poikdjfdi01 14:08:25 2017-04-07T14:08:25.959Z aa939984-1b9b-11e7-83d2-efc6877bdc9b Rejecting messageId: jc0iurgrtkrsrs7f5pk0rsmf4r3q0poikdjfdi01 - Source: user@example.com - Recipients: [ 'user@domain.com' ] - Subject: This is an unwanted message 14:08:25 END RequestId: aa939984-1b9b-11e7-83d2-efc6877bdc9b
관련 정보
관련 콘텐츠
- 질문됨 6달 전lg...
- 질문됨 7달 전lg...
- 질문됨 4달 전lg...
- AWS 공식업데이트됨 2달 전
- AWS 공식업데이트됨 2년 전
- AWS 공식업데이트됨 2년 전