本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
地址列表是 Mail Manager 的一项功能,允许您创建和管理电子邮件地址和域列表,这些列表可以在流量策略和规则集中使用,根据邮件的收件人或发件人是否属于特定列表来处理传入的邮件。地址列表可以更精细地控制电子邮件流,并有助于简化复杂电子邮件路由场景的管理。
什么是地址列表?
地址列表是电子邮件地址和域名的容器,可用于筛选和处理电子邮件。它们提供了一种便捷的方法来对相关地址进行分组,并共同应用路由规则和流量策略。
地址列表的主要用例包括:
-
用于阻止已知垃圾邮件发件人或域名的拒绝名单
-
允许列表用于确保来自可信发件人的投递
-
收件人验证可尽早拒绝发送给不存在的收件人的电子邮件
-
基于角色的路由,用于根据收件人角色应用不同的规则
-
基于群组的策略,用于为特定用户组强制执行策略
地址列表的工作原理
SES 中的地址列表允许您创建和维护电子邮件地址和域的集合,从而简化了电子邮件管理。创建后,这些列表将通过流量策略和规则集成到您的电子邮件工作流程中。
当 SES 处理电子邮件时,它会检查相关的地址列表以确定发件人或收件人是否为成员。然后,根据此成员资格以及您配置的策略和规则,SES 会采取适当的措施,例如路由、筛选或拒绝电子邮件。此过程可以对您的电子邮件流量进行高效、精细的控制。
设置地址列表
创建和填充地址列表
在控制台中创建地址列表的一部分是用一个或多个地址填充该列表。使用邮件管理器 APIs,您可以创建空地址列表并在以后填充它们。本节将通过控制台过程和 AWS CLI 示例向您展示如何执行这两种操作。
要创建和填充地址列表,请执行以下操作:
-
打开 SES 控制台,网址为https://console.aws.amazon.com/ses/
。 -
在 “邮件管理器” 下的导航窗格中,选择 “地址列表”。
-
选择 “创建地址列表”,然后在 “地址列表名称” 字段中输入名称。
-
选择 “手动输入” 或 “批量上传”,然后按照相应的步骤操作:
-
手动输入-在控制台中输入一个或多个电子邮件地址或域名。
如果使用星号 (
*
) 通配符,则以下格式适用:-
地址中
*
只允许有一个:-
如果输入的是电子邮件地址,则
*
应在 @ 之前或之后。 -
当
*
位于局部部分时,局部部分可以为零或 3 到 19 个字符,不包括*
. -
在域中
*
时,子域级别可以为 2 到 9,不包括。*
-
-
有效的通配符格式示例:
-
*.domain1.com 到 *.domain8.domain7... domain1.com
-
* @domain .com
-
123* @domain .com 至 1234567890123456789* @domain .com
-
local@*.domain1.com 到 local@*.domain8.domain7... domain1.com
-
-
-
对于批量上传-选择 “选择文件”,然后从计算机中选择包含要上传的地址的 CSV 或 JSON 文件。
对每种文件类型使用示例中显示的格式:
-
CSV 文件示例(请注意
address
,标题为必填项。 ):address
user1@domain.com
user2@*.domain.com
*@domain.com
-
JSON 文件示例:
{ "items": [ { "address": "
user1@domain.com
" }, { "address": "user2@*.domain.com
" }, { "address": "*@domain.com
" } ] }
-
-
添加完地址或选择了批量文件后,选择创建地址列表。
使用 AWS CLI:
创建地址列表
aws mailmanager create-address-list --address-list-name "
MyDenyList
"
填充地址列表:
-
单次上传
aws mailmanager register-member-to-address-list \ --address-list-id
al-123456789abc
\ --address "user@example.com
" -
批量上传
要进行批量上传,您首先必须创建一个指定 CSV 或 JSON 格式的导入任务:
aws mailmanager create-address-list-import-job \ --address-list-id "
al-123456789abc
" \ --name "MyImportJob
" \ --import-data-format ImportDataType=CSV这将返回任务 ID 和预签名 URL。使用此预签名 URL 将您的 CSV 或 JSON 文件上传到 S3 存储桶,如以下示例所示,使用 curl 命令:
curl -X PUT -T "
/path/to/file
" "pre-signed URL
"上传后,使用上一个命令中返回的任务 ID 启动导入任务:
aws mailmanager start-address-list-import-job --job-id "
job-123456789
"
管理地址列表
您可以根据需要更新、查看和删除地址列表。
更新地址列表
您可以通过添加或删除地址来更新地址列表,也可以选择添加或删除标签。
要更新地址列表,请执行以下操作:
-
在 “地址列表” 页面上,选择要编辑的地址列表的名称。
-
要添加地址,请选择添加电子邮件地址,然后继续使用手动输入或批量上传的方法,如中所述创建和填充地址列表。
-
要删除地址,请选中要删除的每个地址旁边的复选框,然后选择删除电子邮件地址并确认删除。
-
(可选)通过选择 “管理标签” 在地址列表中添加或移除标签。
使用 AWS CLI:
Add
aws mailmanager register-member-to-address-list \ --address-list-id
al-123456789abc
\ --address "user@example.com
"
Remove
aws mailmanager deregister-member-from-address-list \ --address-list-id
al-123456789abc
\ --address "user@example.com
"
查看地址列表详情
要查看地址列表详细信息,请执行以下操作:
-
在 “地址列表” 页面上,选择地址列表的名称以查看其详细信息。
使用 AWS CLI:
aws mailmanager list-members-of-address-list --address-list-id
al-123456789abc
删除地址列表
要删除地址列表,请执行以下操作:
-
在 “地址列表” 页面上,选择要删除的地址列表旁边的单选按钮,然后选择 “删除”。
-
键入 “确认”,然后键入 “删除”,确认删除列表。
使用 AWS CLI:
aws mailmanager delete-address-list --address-list-id
al-123456789abc
在流量策略和规则集中使用地址列表
地址列表可用于流量策略声明和规则条件,根据列表成员资格处理电子邮件,从而控制电子邮件流。
在流量策略声明中使用地址列表
当您创建流量策略声明的条件以允许或拒绝电子邮件进入您的入口端点时,可以选择地址列表。
以下控制台过程及其 AWS CLI 等效程序显示了一个创建策略声明的示例,如果收件人位于指定地址列表中,则允许消息进入您的入口端点。
要在流量策略声明中使用地址列表,请执行以下操作:
-
创建新的流量策略或编辑现有流量策略,如中所述 创建流量策略和策略声明(控制台)
-
在 “策略语句” 容器中,选择 “允许”,以便在满足语句的条件时执行操作。
-
按如下方式构建语句的条件:
-
在 “协议” 字段中选择 “收件人地址”。
-
在 “操作员” 字段中选择 “在地址列表中”。
-
在 “值” 字段中选择地址列表的名称。
-
-
虽然这只是一个示例,但您可以在任何地址列表中添加更多策略条件,这些条件可以基于各种运算符。
使用 AWS CLI:
aws mailmanager create-traffic-policy \ --default-action ALLOW \ --traffic-policy-name "
testpolicy
" \ --policy-statements '[{ "Action": "ALLOW", "Conditions": [{ "BooleanExpression": { "Evaluate": { "IsInAddressList": { "Attribute": "RECIPIENT", "AddressLists": [ "arn:aws:ses:eu-west-3
:123456789012
:mailmanager-address-list/al-123456789abc
" ] } }, "Operator": "IS_TRUE" } }] }]'
在规则中使用地址列表
当您为其中一个规则集中使用的规则创建条件以触发该规则的操作时,可以选择地址列表。
以下控制台过程及其 AWS CLI 等效程序显示了创建规则的示例,该规则将在收件人位于指定地址列表中时调用丢弃操作。
要在规则条件中使用地址列表,请执行以下操作:
-
创建新规则或编辑现有规则,如中所述 创建规则集和规则(控制台)
-
在规则条件容器中,按如下方式构建规则的条件。
-
在 “选择属性” 字段中选择 “收件人地址”。
-
在 “选择运算符” 字段中选择 “在地址列表中”。
-
在 “值” 字段中选择地址列表的名称。
-
-
在 “操作” 容器中,选择 “添加新动作”,然后选择 “删除操作”。
-
虽然这只是一个示例,但您可以添加更多规则条件,这些条件可以基于各种运算符的任意地址列表来执行各种操作。
使用 AWS CLI:
aws mailmanager create-rule-set \ --rule-set-name "
testruleset2
" \ --rules '[{ "Name": "addresslist", "Conditions": [{ "BooleanExpression": { "Evaluate": { "IsInAddressList": { "Attribute": "RECIPIENT", "AddressLists": [ "arn:aws:ses:us-east-1
:123456789012
:mailmanager-address-list/al-123456789abc
" ] } }, "Operator": "IS_TRUE" } }], "Actions": [{ "Drop": {} }] }]'
最佳实践和注意事项
-
请注意列表的大小,因为列表过大可能会影响性能。
-
地址列表是特定于账户的,只能在同一个 AWS 账户中使用。
-
目前不支持嵌套地址列表。
-
每个区域最多支持 100 个地址列表。
-
每个地址列表最多支持 100,000 个地址。