我已经启动了一个具有IAM角色的ec2实例,并将以下策略与IAM角色相关联。
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"s3:GetObject",
"s3:PutObject",
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::/testbucket/*",
"Effect": "Allow"
}
]
}
但是,当我尝试使用ec2-instance中的aws cli下载文件时,我继续拒绝访问。
aws s3api get-object --bucket testbucket --key file_name file_name
当我模拟策略并对存储桶中的对象执行操作时,我收到消息'允许'。当我访问http://169.254.254/latest-metadata/iam/info
时,我可以看到正确的实例配置文件附加了实例我有什么明显的遗失吗?
答案 0 :(得分:1)
我忽略了一个小错字。
"Resource": "arn:aws:s3:::/testbucket/*"
存储桶名称前应该没有/
。改变它,一切都很好。
"Resource": "arn:aws:s3:::testbucket/*"