使用邮递员发送AWS EC2 RestAPI返回错误
我正在尝试使用Postman应用程序发送EC2 RestAPI(DescribeInstances)。我在AWS的IAM中创建了一个用户。我为该特定用户生成了AccessKeyId和SecretKey,并为用户提供了“AmazonEC2FullAccess”策略(所有EC2访问)。 我在Postman中使用了以下步骤来发送ResAPI:使用邮递员发送AWS EC2 RestAPI返回错误,rest,amazon-web-services,amazon-ec2,postman,Rest,Amazon Web Services,Amazon Ec2,Postman,我正在尝试使用Postman应用程序发送EC2 RestAPI(DescribeInstances)。我在AWS的IAM中创建了一个用户。我为该特定用户生成了AccessKeyId和SecretKey,并为用户提供了“AmazonEC2FullAccess”策略(所有EC2访问)。 我在Postman中使用了以下步骤来发送ResAPI: “获取”操作,将端点设置为 在“授权”选项卡中,选择“AWS签名”并设置以下字段: AccessKey=ACCESSKEYEXAMPLE SecretKey
- “获取”操作,将端点设置为
- 在“授权”选项卡中,选择“AWS签名”并设置以下字段:
- AccessKey=ACCESSKEYEXAMPLE
- SecretKey=SecretKey示例
- AWS地区=美国西部-1
- 服务名称=ec2
- 单击“更新请求”,最终生成3个标题。我使用生成的标题中的信息修改端点,如下所示:
- “内容类型”标题设置为“application/x-www-form-urlencoded”,并删除了x-Amz-Date和Authorization标题
AuthFailure
AWS无法验证提供的访问凭证4BC49D04-2115-4b95-8af5-5ac879ac5df3
该错误似乎表明RestAPI格式错误,而不是未经授权的访问。尝试了不同的变化,非常困惑。任何帮助都将不胜感激
谢谢,,
艾哈迈德。我刚刚找到了解决同一问题的办法。您的URL应该是: 直到我添加了
&Version=2016-11-15
和地区,它才起作用
说明
版本
是强制性的只是为了补充@chriscatfr答案,下面是如何设置邮递员参数以查询us-east-1
地区的实例的屏幕截图:
ec2.amazonaws.com
不是us-west-1的端点。正确的主机名是ec2.us-west-1.amazonaws.com
。仅更改端点没有帮助,出现相同的错误消息。但是,按照您的建议更改端点并将身份验证凭据作为头参数,使API能够工作()。知道为什么将身份验证凭据作为查询失败吗?再次感谢您。这很难确定,但您的描述听起来像是您在生成URL后修改了请求。对于GET
请求,浏览器通常不会像在POST
中那样设置内容类型
标题。是的,这在2020年对我有效。版本必须准确,而不仅仅是任何旧的日期。。为了我。。