MinIO 存储桶安全策略配置

283 字
1 分钟
MinIO 存储桶安全策略配置
Warning

将存储桶配置为 public 后,任何人均可通过 HTTP 请求直接上传、删除和列目录。应通过自定义策略严格限制操作权限。

将 MinIO 存储桶配置为 public 后,任何人均可通过 HTTP 请求直接操作存储桶内容。应通过自定义存储桶策略限制操作权限。

尚未部署 MinIO?参见 MinIO 对象存储安装指南

问题原因#

MinIO 的 public 策略等同于完全开放,包括列目录(s3:ListBucket)、上传(s3:PutObject)、删除(s3:DeleteObject)等操作均无限制。

推荐策略:仅允许公共读#

以下策略允许任何人读取文件(GetObject),但禁止写入、删除和列目录:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": ["s3:GetObject"],
"Resource": ["arn:aws:s3:::your-bucket-name/*"]
},
{
"Effect": "Deny",
"Principal": "*",
"Action": [
"s3:PutObject",
"s3:DeleteObject",
"s3:PutBucketPolicy",
"s3:DeleteBucketPolicy"
],
"Resource": [
"arn:aws:s3:::your-bucket-name",
"arn:aws:s3:::your-bucket-name/*"
]
}
]
}

仅禁止列目录#

如果只需防止目录遍历,可单独添加以下 Deny 规则:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::your-bucket-name"
}
]
}

your-bucket-name 替换为实际存储桶名称,然后在 MinIO Console 的 Bucket → Access Policy 中粘贴并保存即可。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!

赞助
MinIO 存储桶安全策略配置
https://blog.olinl.com/posts/minio-bucket-policy/
作者
顾拾柒
发布于
2026-01-21
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
顾拾柒
The world is big, you have to go and see.
公告
欢迎来到我的博客!
分类
标签
站点统计
文章
81
分类
7
标签
158
总字数
83,114
运行时长
0
最后活动
0 天前
站点信息
构建平台
Vercel
博客版本
Firefly v6.12.1
文章许可
CC BY-NC-SA 4.0

文章目录