使用 django 和 AWS SES 签名 V4 发送电子邮件
Posted
技术标签:
【中文标题】使用 django 和 AWS SES 签名 V4 发送电子邮件【英文标题】:Send email with django and AWS SES signature V4 【发布时间】:2021-08-06 17:09:21 【问题描述】:我有一个 django 项目并收到一封电子邮件,通知我应该将我的 ses 签名从 v2 更改为 v4。我按照本教程创建了一个新的 IAM 用户 https://docs.aws.amazon.com/ses/latest/DeveloperGuide/smtp-credentials.html 并附上了这个政治:
`
"Version": "2012-10-17",
"Statement": [
"Effect": "Allow",
"Action": [
"ses:*"
],
"Resource": "*"
]
`
我正在使用此库 https://pypi.org/project/django-ses/,但收到此错误消息“调用 GetSendQuota 操作时发生错误 (SignatureDoesNotMatch):我们计算的请求签名与您提供的签名不匹配。检查您的 AWS 秘密访问密钥和签名方法。详情请查阅服务文档。"
在我的环境变量中,我放了
AWS_SES_ACCESS_KEY_ID = 我在创建 SMTP 用户时获得的 Smtp 用户名
AWS_SES_SECRET_ACCESS_KEY = 我在创建 SMTP 用户时获得的 Smtp 密码
有人可以帮忙发邮件吗?
【问题讨论】:
【参考方案1】:用于发送电子邮件的密钥不是“SMTP 凭据”。密钥是全局访问密钥,可以检索的秘密访问密钥对。
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-concepts-credentials.html
【讨论】:
以上是关于使用 django 和 AWS SES 签名 V4 发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章
Django Reset PW 电子邮件不在 AWS 上发送