MinIO
1 前言
一个问题,一篇文章,一出故事。
笔者需要学习创建MinIO存储的桶和权限,于是整理此文。
2 最佳实践
2.1 准备MinIO服务和客户端环境
2.1.1 准备MinIO
请根据文档准备MinIO存储环境,
2.1.2 配置MinIO客户端
2.1.3 安装Jason格式化工具
dnf install -y yajl
2.2 配置桶和权限
2.2.1 创建bucket
mc mb minio/mybucket
可见如下提示,
Bucket created successfully `minio/mybucket`.
我们可以使用如下命令确认,
mc ls minio
可见如下提示,
[2022-06-09 20:15:23 EDT] 0B mybucket/
2.2.2 创建用户
mc admin user add minio miniouser miniouserpwd
可见如下提示,
Added user `miniouser` successfully.
可以使用如下命令列出已经创建的用户,
mc admin user list minio
可见如下提示,
enabled miniouser
2.2.3 列出预设策略
mc admin policy list minio
可见如下预设策略,
readwrite writeonly consoleAdmin diagnostics readonly
然后,我们使用如下命令获取策略的详情,
mc admin policy info minio readwrite
可见如下提示,
{ "PolicyName": "readwrite", "Policy": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:*" ], "Resource": [ "arn:aws:s3:::*" ] } ] } }
2.2.4 创建自定义策略
mc admin policy info minio readwrite | json_reformat > ~/mybucket-readwrite.json
以上命令导出预设策略到新的自定义侧列配置文件,然后,我们使用如下命令定制自己的策略,
vim ~/mybucket-readwrite.json
配置修改如下,
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:*" ], "Resource": [ "arn:aws:s3:::mybucket/*" ] } ] }
需要注意的是,
– 需要删除“PolicyName”属性的定义
– 通过”Resource”修改的定义限制用户只能操作特定的桶“mybucket”
然后,我们使用如下命令导入策略,
mc admin policy add minio mybucket-readwrite ~/mybucket-readwrite.json
可见如下提示,
Added policy `mybucket-readwrite` successfully.
2.2.5 应用自定义策略
mc admin policy set minio mybucket-readwrite user=miniouser
可见如下提示,
Policy `mybucket-readwrite` is set on user `miniouser`
参阅文档
==============
https://docs.min.io/docs/minio-admin-complete-guide.html
https://docs.min.io/docs/minio-client-quickstart-guide.html
没有评论