1 個回答
- 最新
- 最多得票
- 最多評論
0
【以下的回答经过翻译处理】 对于那些偶然遇到这个帖子并遇到相同问题的人,以下是解决方法。
问题的原因在于SES v2和v1 API验证电子邮件身份的方式不同。
一般来说,如果整个域已经通过SES验证,就不需要验证该域内特定的电子邮件地址。除非您想要更改某些电子邮件地址的操作配置。然而,如果要使用SES SMTP发送电子邮件时,需要使用v1 API验证电子邮件地址。
在您的Web控制台上,可能会显示为已验证,因为它使用了v2调用。但是,如果您使用CLI检查,您将看到状态为"失败或挂起"。这是非常奇怪的行为,对我来说几乎像是一个bug,但我不在AWS工作。
您可以通过运行以下命令来验证这一点:(用您的电子邮件身份替换user@example.com)
aws ses get-identity-verification-attributes --identities user@example.com"
它会显示如下内容…
{
"VerificationAttributes": {
"user@example.com": {
"VerificationStatus": "Pending"
}
}
}
这与控制台上显示的内容完全不同。
解决方案:
-
打开Amazon SES控制台。
-
在导航栏中的AWS区域选择器中,选择您的身份所在的区域。
-
从已验证身份列表中,选择电子邮件身份。然后,选择删除。
-
选择创建身份。然后,重新输入电子邮件身份详细信息。
-
然后运行此CLI命令(将[user@example.com] 注意:此命令将一个电子邮件地址添加到当前AWS区域的Amazon SES帐户的身份列表中,并尝试对其进行验证。执行此操作后,将向指定地址发送一封验证电子邮件。
-
点击您的邮箱中收到的验证链接,以验证此电子邮件身份,并通过运行验证属性命令在AWS控制台和AWS CLI中验证电子邮件地址。
aws ses get-identity-verification-attributes --identities user@example.com
结果应该类似:
{
"VerificationAttributes": {
"user@example.com": {
"VerificationStatus": "Success"
}
}
}
- 一旦在控制台上验证状态显示为"已验证",并在CLI级别显示为"成功",您可以通过发送一封电子邮件来测试电子邮件身份,以验证它是否使用了SES上的正确配置。
相關內容
- 已提問 1 年前
- 已提問 1 年前
- AWS 官方已更新 10 個月前
- AWS 官方已更新 10 個月前
- AWS 官方已更新 9 個月前
- AWS 官方已更新 8 個月前