我有EC2实例。
我正在尝试从中调用aws s3
,但收到错误消息
Unable to locate credentials
我尝试了aws configure
,但确实显示所有内容均为空。
我看到分配给该实例的S3完全权限的IAM角色。
我需要任何其他配置吗?
答案 0 :(得分:1)
如果您在具有指定角色的Amazon EC2实例上运行curl http://169.254.169.254/latest/meta-data/iam/security-credentials/
,则它应自动找到凭据。
您还可以使用它来查看实例中的凭据:
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/ROLE-NAME/
应列出角色名称。然后将其附加到命令:
AccessKeyId
然后应向您显示SecretAccessKey
,.gallery li {
display: inline;
width: 100px;
height: 100px;
position: relative;
}
等。
如果未出现该信息,则表明您的角色未正确附加到实例。尝试取消分配角色,然后将其重新分配给实例。
答案 1 :(得分:0)
首先阅读并遵循约翰·罗滕斯坦的建议。
SDK(从中构建CLI的SDK)按以下顺序搜索凭据:
在确认您的EC2实例在元数据中具有凭据之后,请再次检查1和2,以确保没有其他凭据(即使为空)。
注意:此链接与我的最后一点(空凭证文件)相抵触。我从不在EC2实例上创建(存储)凭据,而仅使用IAM角色。