【发布时间】:2019-12-21 14:07:44
【问题描述】:
我创建了一个小型 python 脚本,它只是查询某些实例的 AWS 现货定价,这在昨天和过去一周都在工作。然而,尽管使用不同的凭据,我正在运行它的机器收到以下错误:
aws_query = client.describe_spot_price_history(
StartTime=today,
EndTime=today,
InstanceTypes=[
'g2.2xlarge'
],
ProductDescriptions=[
'Linux/UNIX',
],
MaxResults=3
)
这将返回以下内容:
botocore.exceptions.ClientError:调用 DescribeSpotPriceHistory 操作时发生错误 (AuthFailure):AWS 无法验证提供的访问凭证
我理解这个错误,但它没有任何意义。与正在运行的实例关联的 IAM 角色绝对有权执行此操作。
我认为没有任何更改会影响这一点。
注意,这个脚本可以在我的本地机器上运行。
有没有人知道是什么原因造成的?
作为替代方案 - 有谁知道我如何要求 Boto3 确认它正在使用的凭据?
【问题讨论】:
-
如何在策略模拟器中测试角色? policysim.aws.amazon.com
-
@mootmoot 我会添加我自己的答案。这个问题实际上最终是服务器上的时间同步问题。
-
您可以向 AWS 论坛提出这个问题吗?虽然这种情况很少见,但我没有发现 STS 提到时区要求。因此,如果 AWS 更新他们的文档,这将很有帮助。
-
绝对可以!抱歉耽搁了。
标签: python amazon-web-services boto3