我制定了以下政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowUserToSeeBucketListInTheConsole",
"Action": [
"s3:GetBucketLocation",
"s3:ListAllMyBuckets"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::*"
]
},
{
"Sid": "AllooUserFullAccessToBucket",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::mybucket/*"
]
}
]
}
通过 Key/Secret(使用 Cloudberry Explorer)访问存储桶时,我可以:
- 列出所有存储桶
- 列出、下载、上传和删除到mybucket中,但前提是在存储桶权限上也有此权限:
或者
我需要在策略中添加另一个项目以取消存储桶级别权限要求:
{
"Sid": "AllooUserFullAccessToBucketPre",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"arn:aws:s3:::mybucket"
]
},
是否存在允许策略中只有 2 个项目(AllowUserToSeeBucketListInTheConsole 和单个 AllooUserFullAccessToBucket)而不需要存储桶级别权限的语法?
根据我的经验,制定一项仅授予对存储桶和内容的访问权限的策略是相当标准的做法。
我通常会使用这样的策略(不想允许此用户覆盖存储桶权限,或删除存储桶等):
试试这个: