MinIO
为了放开访问权限,设置了*
,但如果直接访问桶的路径时,竟然把桶里的所有文件链接都列出来了,对系统隐私效果十分不友好。
本文以新版和旧版进行总结,如何配置MinIO
的policy
来禁止展示桶文件列表。
话外
自从 MinIO
开源协议从 Apache2.0
变更为 AGPLv3
,新协议具有严重的约束,对商业不友好,按照AGPLv3
规定,只要系统部署后接入MinIO
服务,具有文件存储或读取行为,不论是否改造源码,不论发布在何处,都需要将整个产品源码开源。
若需要使用minio开源版则请下载部署Apache2.0的最后一个版本:minio-RELEASE.2021-04-22T15-44-28Z
本文以此版本为分界线来配置桶禁止展示文件列表;
新版MinIO配置
新版自带了功能比较全的配置页,设置禁止展示桶文件列表特别简单,直接设置桶的Access Policy
为自定义就好。
登录控制台,点击 Buckets
,找到要设置的桶,点击进入,点击Access Policy
下的选项,选择为 Custom
。
将 Action
下的 s3:ListBucket
删除即可。
旧版MinIO配置
旧版控制台只有基础的文件管理,设置了 public
,设置的 policy
如下图,就可以直接访问该桶下面所有的文件资源,但访问根目录则会出现所有文件列表。
禁止文件展示文件列表,则需要下载 MinIO
的 mc
客户端。
wget https://dl.minio.org.cn/client/mc/release/linux-amd64/archive/mc.RELEASE.2021-04-22T17-40-00Z
mv mc.RELEASE.2021-04-22T17-40-00Z mc
chmod +x mc
赋予文件权限后,配置MinIO
登录
// 登录minio
./mc config host add minio http://127.0.0.1:9000 用户名 密码
// 检查是否连接成功
./mc config host list
查看当前桶具有什么权限,执行以下命令
./mc policy get-json minio/mpb
该命令会返回一个json
内容,将该内容复制出来,新建一个 new_policy.json
文件,并将内容复制进去,然后保存文件。
修改 new_policy.json
文件,将 将 Action
下的 s3:ListBucket
删除后 保存。
执行以下命令,修改桶的 policy
./mc policy set-json new_policy.json minio/mpb
然后我们再访问桶目录,就不在展示文件列表了。
评论 (0)