我是 AWS 新手,正在寻找一个存储桶策略,以使我的 ec2 服务器能够访问同一帐户上的 S3 存储桶。我尝试使用以下策略来启用帐户:{“Sid”:“AddCannedAcl”,“Effect”:“Allow”,“Principal”:“AWS”:“arn:aws:iam::account-number:root”},“Action”:“s3:", "资源": "arn:aws:s3:::my-bucket/“ ] } 但是我在 ec2 上被拒绝访问。
我发现了这一点: http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Principal “Principal”:{“Service”:[“ec2.amazonaws.com”,“datapipeline.amazonaws.com”]} 应该专门启用 ec2。但在编辑策略时,我收到“我们遇到了内部错误。请重试。”任何帮助都值得感激。
答案1
在您想要使用的 s3 存储桶上设置存储桶策略,可以创建一个角色或使用您现有的 ec2 角色添加到策略中。
{
"Version" : "2008-10-17",
"Statement" : [{
"Sid" : "",
"Effect" : "Allow",
"Principal" : {
"AWS" : "arn:aws:iam::000000000000:role/some_role"
},
"Action" : [
"s3:DeleteObject",
"s3:GetObject",
"s3:PutObject"
],
"Resource" : "arn:aws:s3:::some-s3-bucket/*"
}, {
"Sid" : "",
"Effect" : "Allow",
"Principal" : {
"AWS" : "arn:aws:iam::000000000000:role/some_role"
},
"Action" : "s3:ListBucket",
"Resource" : "arn:aws:s3:::some-s3-bucket"
}
]
}