微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – SES AWS错误代码:SignatureDoesNotMatch,状态代码:403

我在尝试通过Amazon SES发送邮件时收到AWS错误代码:SignatureDoesNotMatch,状态代码:403.

我已经确认我使用的是我通过https://console.aws.amazon.com/iam/home?#users创建的正确凭据,但错误仍然存​​在.

我假设我在iam / home上创建的凭据实际上是全局的,但我不知道我做错了什么.整个错误是:

AWS Error Code: SignatureDoesNotMatch, Status Code: 403, AWS Request
ID: xxx, AWS Error Type: client, AWS Error Message: Signature expired:
20140314T031111Z is Now earlier than 20140317T15116Z (20140317T151111Z
– 5 min.), User-Agent: aws-sdk-PHP2/2.5.3 Guzzle/3.8.1 curl/7.22.0 PHP/5.3.10-1ubuntu3.10 thrown in
/url/vendor/Aws/Common/Exception/NamespaceExceptionFactory.PHP on line
91

实际代码是我从中获取代码http://docs.aws.amazon.com/aws-sdk-php/latest/class-Aws.Ses.SesClient.html#_sendEmail

我从我的本地环境中解雇了这个脚本.

我在哪里可以找到有用的凭据?

解决方法:

这看起来像时钟偏差问题.您发送请求的计算机的时间与Amazon SES服务器的时间差异太大.这导致您的签名无效.你的凭据可能没问题.更正机器的时钟或与NTP服务器同步.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐