PHP调用AWS SES服务发送邮件报403 Forbidden SignatureDoesNotMatch

错误描述

使用sdk-for-phphttps://docs.aws.amazon.com/zh_cn/sdk-for-php/v3/developer-guide/welcome.html

$emailConfig     = [
    'key'       => 'xxxxxx',
    'secret'    => 'xxxxxx',
    'region'    => 'us-east-1',
    'sender'    => 'support@appblog.cn',
];

Error executing "SendRawEmail" on "https://email.us-east-1.amazonaws.com"; AWS HTTP error: Client error: `POST https://email.us-east-1.amazonaws.com` resulted in a `403 Forbidden` response:
<ErrorResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
  <Error>
    <Type>Sender</Type>
    <Code>SignatureDo (truncated...)
 SignatureDoesNotMatch (client): The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.

The Canonical String for this request should have been
'POST
/

host:email.us-east-1.amazonaws.com
x-amz-date:20210330T020743Z

host;x-amz-date
e921dae6c46aa9c5db01b8aa68fefc10794c65c6612987d85d1c3482943b2eba'

The String-to-Sign should have been
'AWS4-HMAC-SHA256
20210330T020743Z
20210330/us-east-1/ses/aws4_request
968b7b0686f381beefac6be2b39637cd5ed83071624c4a47f3d6a6bad89b5c1c'
 - <ErrorResponse xmlns="http://ses.amazonaws.com/doc/2010-12-01/">
  <Error>
    <Type>Sender</Type>
    <Code>SignatureDoesNotMatch</Code>
    <Message>The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.

The Canonical String for this request should have been
'POST
/

host:email.us-east-1.amazonaws.com
x-amz-date:20210330T020743Z

host;x-amz-date
e921dae6c46aa9c5db01b8aa68fefc10794c65c6612987d85d1c3482943b2eba'

The String-to-Sign should have been
'AWS4-HMAC-SHA256
20210330T020743Z
20210330/us-east-1/ses/aws4_request
968b7b0686f381beefac6be2b39637cd5ed83071624c4a47f3d6a6bad89b5c1c'
</Message>
  </Error>
  <RequestId>f020662d-0b8d-432b-93af-0b649a0c2a21</RequestId>
</ErrorResponse>

解决方法

您需要先支付 0.2元 才能查看此处内容!

立即支付
已支付?点击这里查询

上一篇 AWS SES通过PHP发送带附件的邮件
下一篇 AWS ACM 证书管理
目录
文章列表
1 Android使用Facebook的开放图谱发布图文分享
Android使用Facebook的开放图谱发布图文分享
2
schedule方法和scheduleAtFixedRate方法的区别
schedule方法和scheduleAtFixedRate方法的区别
3
Android集成Bugly热更新
Android集成Bugly热更新
4
高中数学基础:数列与不等式
高中数学基础:数列与不等式
5
Linux下tar命令exclude选项排除指定文件或目录
Linux下tar命令exclude选项排除指定文件或目录
最新评论
一位WordPress评论者
一位WordPress评论者
2月12日
您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar。