【发布时间】:2018-08-08 10:28:54
【问题描述】:
我一直在尝试通过访问 REST API [1] 来监控实例。对于特定的访问密钥和秘密密钥,我在 AWS S3 示例上尝试了相同的凭证,它成功执行,但对于 Amazon EC2,我收到以下错误:
<?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error><Code>AuthFailure</Code><Message>AWS was not able to validate the provided access credentials</Message></Error></Errors><RequestID>627188e0-e134-435e-aece-7056a8360a46</RequestID></Response>
AmazonS3 和 AMzonEC2 的 SIgnature 生成是否不同?我正在使用 [2] 生成签名,据我了解,amazon s3 和 amazon ec2 的签名生成没有重大变化。
这可能是什么原因?我们必须为 AmazonEC2 设置任何特定权限吗?
[1]https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_MonitorInstances.html
[2]https://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html
【问题讨论】:
-
旁注:我强烈建议您使用official AWS SDKs 之一,而不是直接调用 API。这样,您就可以专注于为您的应用增加价值,而不是编写已经存在的低级代码。
-
你的代码在哪里?
标签: amazon-web-services amazon-s3 amazon-ec2 credentials