使用AWS CLI从S3下载文件
问题描述:
我已经启动了一个具有IAM角色的ec2实例,并将以下策略与IAM角色相关联。使用AWS CLI从S3下载文件
{
"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
有什么明显我失踪?
答
我忽略了一个小的错字。
"Resource": "arn:aws:s3:::/testbucket/*"
桶名称前应该没有/
。改变它,一切都很好。
"Resource": "arn:aws:s3:::testbucket/*"