首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何验证AWS SES API请求是否使用签名版本4进行签名

如何验证AWS SES API请求是否使用签名版本4进行签名
EN

Stack Overflow用户
提问于 2020-09-15 05:59:23
回答 1查看 2.4K关注 0票数 1

亚马逊AWS的一封电子邮件写道:

从2020年10月1日开始,Amazon将只支持使用签名版本4签署的请求。

通过查看请求头,您可以很容易地识别使用签名版本3的API请求。使用签名版本3的请求类似于以下示例:X授权: AWS3-HTTPS AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE、Algorithm=HMACSHA256、Signature=lBP67vCvGl .

我已经通过composer安装了“aws/aws”。

我试图找出SES的请求头是签名版本3还是4。

我尝试通过$event->message->getHeader() (一个Swift_Mime_SimpleHeaderSet对象)转储Swift_Mime_SimpleHeaderSet的内容。

然而,它不包括对sdk的请求版本。

问题:

请有人告诉我如何转储传出的aws请求,这样我就可以在标题中看到所使用的版本。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-09-15 06:43:59

如果有人感兴趣,最终能够通过对堆栈进行回溯跟踪来完成任务。

通过命令发送邮件后,我返回跟踪堆栈,可以看到原始请求,其中包括Authorization: AWS4-HMAC-SHA25,确认签名版本4。

代码语言:javascript
复制
Mail::to($receiver)->send($mailable);
dump(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 50));

确保将set服务调试设置为true:

config/services.php

代码语言:javascript
复制
   'ses' => [
        'key'    => env('SES_KEY'),
        'secret' => env('SES_SECRET'),
        'region' => 'us-west-1',
        'debug'  => true,
    ],
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63895965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档