【发布时间】:2021-04-27 01:47:15
【问题描述】:
我希望有一个只有一个 IAM 用户可以使用 AWS 控制台访问的存储桶,列出其内容并访问其中的对象文件。
所以,我已经创建了 IAM 用户、存储桶本身以及以后:
桶策略如下:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "statement1",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::0000000:user/dave"
},
"Action": [
"s3:GetBucketLocation",
"s3:ListBucket"
],
"Resource": "arn:aws:s3:::testbucket1234"
},
{
"Sid": "statement2",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::0000000:user/dave"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::testbucket1234/*"
}
]
}
还有一个附加到我的用户组的内联策略,如下所示:
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"s3:*Object",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::testbucket1234/*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "*"
}
]
}
现在:我可以列出我的存储桶、访问所需的存储桶、列出其内容(到目前为止一切顺利)。问题是当我尝试打开存储桶内的一个文件对象时,我收到“拒绝访问”错误。如果我将对象公开,我可以访问它,但我也可以使用其他 IAM 帐户访问它,这不是本意。我只想通过使用此特定 IAM 帐户来访问存储桶、列出其内容和访问对象。我究竟做错了什么?我怎样才能达到这个目标?提前致谢。
【问题讨论】:
-
向其他用户授予了哪些 S3 权限?他们是否有任何策略可以授予对所有 S3 存储桶的访问权限?
-
你好@JohnRotenstein,实际上我只有我描述过的这些政策。并且公共访问被禁用。
标签: amazon-web-services amazon-s3 amazon-ec2