目录

MinIO 多用户-快速入门

更新于 2021-01-25

MinIO 多用户-快速入门

[TOC]

除了默认用户,MinIO支持在服务器启动后添加多个长期用户。新用户可以在服务器启动后添加,并且可以配置允许或拒绝新用户对 buckets 或 resources 的访问。这篇文章阐述了如何添加和删除用户,以及修改它们的访问权限。

Get started

1. 准备:

  1. 安装mc
  2. 安装MinIO
  3. 配置 ETCD(在 gateway 模式下需要)

2. 使用固定的策略创建用户

使用 mc admin policy 来创建固定策略。服务器提供了一个默认策略集合,它们包括 writeinly , readonly , readwrite (这些策略应用到了服务器上的所有资源)。这些可以通过 mc admin policy 创建自定的策略来重写。

创建新的固定策略文件 getonly.json . 这个策略允许用户下载桶 my-bucketname 下所有的对象。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::my-bucketname/*"
      ],
      "Sid": ""
    }
  ]
}

通过策略名 getonly 使用策略文件 getonly.json 来创建新的固定策略。

mc admin policy add minio getonly getonly.json

其中,minio 即指配置时minio服务器的名称。

创建一个新用户:

mc admin user add minio newuser newuser123

其中 newuser 为新用户的用户名, newuser123 为新用户的密码

当用户成功创建,你就可以把 getonly 策略应用在此用户上:

mc admin policy set minio getonly user=newuser

3. 创建一个新的组

mc admin group add minio newgroup newuser

当组成功创建后,就可以将固定策略 getonly 应用到该组

mc admin policy set minio getonly group=newgroup

4. 禁用用户

禁用用户 newuser

mc admin user remove minio newuser

禁用组 newgroup

mc admin group disable minio newgroup

5. 移除用户

移除用户 newuser

mc admin user remove minio newuser

移除组中用户 newuser

mc admin group remove minio newgroup newuser

移除组 newgroup

mc admin group remove minio newgroup

6. 改变用户或组策略

把用户 newuser 的策略改为 putonly

mc admin policy set minio putonly user=newuser

改变组 newgroup 的策略该为 putonly

mc admin policy set minio puonly group=newgroup

7. 列出组中所有的用户

列出所有的用户(包括现在正在使用的和不用的)

mc admin user list minio

列出所有的组(包括现在正在使用的和不用的)

mc admin group list minio

8. 配置 mc

mc config host add myminio-newuser http://localhost:9000 newuser newuser123 --api s3v4
mc cat myminio-newuser/my-bucketname/my-objectname