【发布时间】:2021-12-15 14:32:12
【问题描述】:
在迷你。当您使用 mc 命令设置存储桶策略以下载时:
mc policy set download server/bucket
bucket 的策略更改为:
{
"Statement": [
{
"Action": [
"s3:GetBucketLocation",
"s3:ListBucket"
],
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Resource": [
"arn:aws:s3:::public-bucket"
]
},
{
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Principal": {
"AWS": [
"*"
]
},
"Resource": [
"arn:aws:s3:::public-bucket/*"
]
}
],
"Version": "2012-10-17"
}
我了解到,在第二个声明中,我们授予匿名用户读取权限以下载带有 url 的文件。我不明白的是,为什么我们需要允许他们执行 s3:GetBucketLocation, s3:ListBucket 的操作。
谁能解释一下?
提前致谢
【问题讨论】:
-
这些是允许访问对象顶层的基本权限
-
@PrakashS 谢谢,但不设置它们我可以正常下载对象!
-
您是作为普通用户尝试应用策略还是使用 root 用户?
-
@PrakashS 无,没有用户,但作为访客,来自“localhost:9000/public-bucket/private.txt”等对象的直接链接
-
请分享您应用的完整政策。