AWS boto (python) 是否支持 SES 签名版本 4?

Jia*_*Cui 8 python signature boto amazon-web-services

由于 AWS 在 2020 年 10 月弃用了 SES 的签名版本 3,我想用 AWS boto (Python) 来处理这个问题。但我没有看到任何与 boto 支持 SES 签名版本 4 相关的文档。有没有人有类似的问题并有解决方案?

leg*_*cia 7

j0nam1el评论推广到答案,因为它直接回答了问题:

我发现在boto 中添加了SignatureV4 支持(2012 年)。但是,交叉引用thisthis,似乎 boto.ses 代码仍然使用 HmacAuthV3Handler。由此,我得出结论,旧的“boto.ses”库的用户将无法在 2020 年 10 月 1 日之后继续使用 AWS SES。

如此 github 问题中所述,截止日期已延长:

我们将对 Signature Version 3 的支持延长至 2021 年 2 月 28 日(之前宣布的弃用日期为 2020 年 10 月 1 日)。从 2021 年 3 月 1 日开始,Amazon SES 中将关闭对签名版本 3 的支持,并且今后将仅支持签名版本 4。当前使用签名版本 3 的 Amazon SES 客户必须在 2021 年 2 月 28 日之前迁移到签名版本 4。此后,使用签名版本 3 的请求将在 Amazon SES 中逐渐受到限制。

我不确定“逐步限制”是什么意思 - 旧式请求会随机失败,还是需要更长的时间?如果您知道,请编辑此答案。


jar*_*mod 3

我的建议是从本质上已弃用的 boto 迁移到 boto3,因为 boto3 默认支持签名 v4(必须显式配置的 S3 预签名 URL 除外)。

  • 这并不能回答问题(boto 是否支持签名版本 4)。我试图找到这个信息并得到这个问题,所以我希望找到答案。boto 上有遗留代码库,例如,现在 AWS SES SMTP 开始发送垃圾邮件,表明 sig 版本 3 即将消失,但它们没有解释哪些 AWS 开发工具包使用 sig 版本 3:/ (2认同)