如何设置MinIO的桶和权限?

MinIO

1 前言

一个问题,一篇文章,一出故事。
笔者需要学习创建MinIO存储的桶和权限,于是整理此文。

2 最佳实践

2.1 准备MinIO服务和客户端环境

2.1.1 准备MinIO

请根据文档准备MinIO存储环境,

如何部署分布式对象存储MinIO?

2.1.2 配置MinIO客户端

如何部署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

没有评论

发表回复

MinIO
如何使用MinFS挂载MinIO?

1 基础知识 1.1 MinFS的介绍 – MinFS是适用于Amazon S3兼容对象 …

MinIO
如何部署MinIO客户端?

1 基础知识 – MinIO Client简称mc – MinIO Clie …

MinIO
如何部署分布式对象存储MinIO?

1 基础知识 1.1 纠删码 1.1.1 纠删码的介绍 – 纠删码是一种用于重建丢失或损 …