使用模拟器在 Amazon SES 中发送测试电子邮件 - Amazon Simple Email Service

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用模拟器在 Amazon SES 中发送测试电子邮件

我们建议使用 Amazon SES 控制台发送 SES 测试电子邮件。由于控制台要求您手动输入信息,因此您通常仅使用它来发送测试电子邮件。在开始使用 Amazon SES 之后,您很可能会使用 Amazon SES SMTP 接口或者 API 来发送电子邮件。但控制台对监控您的发送活动很有用。

以下主题介绍如何从控制台和通过手动发送电子邮件来使用邮箱模拟器:

从控制台使用邮箱模拟器

重要
  • 在本教程中,您将从控制台向自己发送电子邮件,以便检查是否收到了该电子邮件。如需进一步试验或进行负载测试,请参阅手动使用邮箱模拟器

  • 您发送到邮箱模拟器的电子邮件不会计入您的发送配额或您的退信率和投诉率,也不影响 Virtual Deliverability Manager 指标。

在按照这些步骤进行操作之前,请完成设置 Amazon Simple Email Service中的任务。

从 Amazon SES 控制台发送测试电子邮件
  1. 登录AWS Management Console并打开 Amazon SES 控制台,网址为 https://console.aws.amazon.com/ses/

  2. 在导航窗格中的 Configuration(配置)下,选择 Verified Identities(已验证的身份)。

  3. Identities(身份)表中,选择已验证的电子邮件身份(通过直接单击身份名称而不是选中其复选框)。如果您没有经过验证的电子邮件身份,请参阅 创建电子邮件地址身份

  4. 在所选电子邮件身份的详细信息页面上,选择 Send test email(发送测试电子邮件)。

  5. 对于邮件详细信息,选择电子邮件格式。有以下两个选项:

    • Formatted (格式化) – 这是最简单的选项。如果您只是想将消息文本键入到 Body 文本框中,则选择此选项。当您发送电子邮件时,Amazon SES 会为您将文本转换为电子邮件格式。

    • Raw (原生) – 如果您要发送更复杂的邮件(例如包含 HTML 或附件的邮件),请选择此选项。由于此灵活性,您需要设置消息的格式,如使用 Amazon SES API v2 发送原始电子邮件中所述,然后将整个设置了格式的消息 (包括标头) 粘贴到 Body 文本框中。您可以使用以下示例 (包含 HTML) 来发送采用 Raw 电子邮件格式的测试电子邮件。将此消息整个复制并粘贴到 Body 文本框中。确保 MIME-Version 标头和 Content-Type 标头之间没有空白行;这两行之间的空白行将导致电子邮件的格式为纯文本而不是 HTML。

      Subject: Amazon SES Raw Email Test MIME-Version: 1.0 Content-Type: text/html <!DOCTYPE html> <html> <body> <h1>This text should be large, because it is formatted as a header in HTML.</h1> <p>Here is a formatted link: <a href="https://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html">Amazon Simple Email Service Developer Guide</a>.</p> </body> </html>
  6. 通过展开 Scenario(场景)列表框选择要测试的模拟电子邮件场景的类型。

    1. 如果您选择 Custom(自定义)并且仍在 Amazon SES 沙盒中,请确保 Custom recipient(自定义收件人)字段中的地址是经过验证的电子邮件地址。有关更多信息,请参阅创建电子邮件地址身份

  7. 根据需要填写其余字段。

  8. 选择 Send Test Email(发送测试电子邮件)。

  9. 登录您将电子邮件发送到的地址的电子邮件客户端。您将找到已发送的电子邮件。

手动使用邮箱模拟器

Amazon SES 包含一个邮箱模拟器,您可以用它来测试您的应用程序如何处理各种电子邮件发送场景。邮箱模拟器非常有用,例如,在您希望测试电子邮件发送应用程序而无需创建虚构电子邮件地址时,或者当您希望确定系统的最大吞吐量而不会影响每日发送配额时。

重要注意事项

在使用 Amazon SES 邮箱模拟器时,请注意以下功能和限制:

  • 即使您的账户位于 Amazon SES 沙盒中,您也可以使用邮箱模拟器。

  • 发送到邮箱模拟器的电子邮件限制为您的账户的最大发送速率,但不会影响您的每日发送配额。例如,如果授权您的账户每 24 小时周期发送 10000 封邮件,而您向邮箱模拟器发送了 100 封邮件,您最多仍可以向普通收件人发送 10000 封邮件而不会超过您的发送配额。

  • 发送到邮箱模拟器的电子邮件不会影响您的电子邮件送达率或声誉指标。例如,如果您发送大量邮件到电子邮件模拟器的退信地址,它不会在声誉指标控制台页面上显示消息来警告您邮件退回率太高。

  • 在计费方面,发送到 Amazon SES 邮箱模拟器的电子邮件与使用 Amazon SES 发送的任何其他电子邮件相同。换而言之,对于您发送给邮箱模拟器的邮件以及发送到普通收件人的邮件,我们将向您收取相同的费用。

  • 邮箱模拟器支持加标签,利用此功能,您可以通过多种方式将电子邮件发送到同一邮箱模拟器地址,也可以查看应用程序如何处理可变信封退回路径 (VERP)。例如,您可以将电子邮件发送到 bounce+label1@simulator.amazonses.combounce+label2@simulator.amazonses.com 以测试您的应用程序是否可以使用导致退回的电子邮件地址匹配退信。

  • 如果您使用邮箱模拟器模拟来自同一个发送请求的多个退信,Amazon SES 会将退信回复合并成单个回复。

使用邮箱模拟器

要使用电子邮件模拟器,请在下表中找到场景,然后将电子邮件发送到对应的电子邮件地址。

注意

将电子邮件发送到邮箱模拟器地址时,必须使用 AWS CLI、AWS SDK、Amazon SES 控制台、Amazon SES SMTP 接口或 Amazon SES API,通过 Amazon SES 来使用它。邮箱模拟器不会回复接收自外部来源的电子邮件。

模拟的场景 电子邮件地址
成功送达 – 收件人的电子邮件提供商接受了电子邮件。如果您按照为 Amazon SES 设置事件通知中所述方式设置送达通知,那么 Amazon SES 会通过 Amazon Simple Notification Service(Amazon SNS)将送达通知发送给您。 success@simulator.amazonses.com
退信 – 收件人的电子邮件提供商拒绝您的电子邮件并返回 SMTP 550 5.1.1(“未知用户”)响应代码。Amazon SES 会生成一条退信通知,根据您的账户设置,通过电子邮件将其发送给您或者发送通知到 Amazon SNS 主题。邮箱模拟器电子邮件地址不会像一般的电子邮件地址一样在出现硬退信时被加入 Amazon SES 黑名单。您从邮箱模拟器收到的退信响应符合 RFC 3464。有关如何接收退信反馈的信息,请参阅为 Amazon SES 设置事件通知 bounce@simulator.amazonses.com
自动回复 – 收件人的电子邮件提供商接受您的电子邮件并将其传送到收件人的收件箱。电子邮件提供商发送自动回复 (例如“out of the office (外出,OOTO)”消息) 到电子邮件 Return-Path 标头中的地址,如果没有 Return-Path 标头,则发送到信封发件人 ("MAIL FROM") 地址。您从邮箱模拟器收到的自动回复符合 RFC 3834 标准。 ooto@simulator.amazonses.com
投诉 – 收件人的电子邮件提供商接受您的电子邮件并将其传送到收件人的收件箱。收件人在自己的邮件客户端中确定您的邮件是未经请求的,并单击 Mark as Spam (标记为垃圾邮件)。Amazon SES 随后通过电子邮件或通知 Amazon SNS 主题(具体取决于您的账户设置)将投诉通知转发给您。您从邮箱模拟器收到的投诉响应符合 RFC 5965。有关如何接收投诉反馈的信息,请参阅为 Amazon SES 设置事件通知 complaint@simulator.amazonses.com
收件人地址在黑名单上 – Amazon SES 生成硬退信,就像是收件人的地址在全局黑名单上一样。 suppressionlist@simulator.amazonses.com

测试拒绝事件

您经由 Amazon SES 发送的每个邮件都会经过病毒扫描。如果您发送一个包含病毒的邮件,Amazon SES 会接受该邮件,检测病毒,然后拒绝整个邮件。当 Amazon SES 拒绝邮件时,它会停止处理邮件,并且不会尝试将邮件发送到收件人的邮件服务器。然后,它将生成一个拒绝事件。

Amazon SES 邮箱模拟器不包含用于测试拒绝事件的地址。但是,您可以使用欧洲计算机防病毒研究所 (EICAR) 测试文件来测试拒绝事件。此文件是一个以安全的方式测试反病毒软件的行业标准方法。要创建 EICAR 测试文件,请将以下文本粘贴到一个文件中:

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

将该文件另存为 sample.txt,将其附加到电子邮件,然后将电子邮件发送到经验证的地址。如果该电子邮件没有任何其他问题,Amazon SES 会接受该邮件,但接着会拒绝它,如同它包含真实病毒一样。

注意

拒绝的电子邮件(包括通过使用上述过程发送的电子邮件)将被计入您的每日发送配额中。我们将向您发送的每封邮件收费,包括被拒绝的邮件。

要了解有关 EICAR 测试文件的更多信息,请参阅 Wikipedia 上的 EICAR 测试文件页面