MinIO 用户访问策略(User Access Policy)

2023-10-10  本文已影响0人  偷油考拉

Policies模块 官方文档
访问管理 官方文档

一、内置 Policy

注意:
内置策略适用于全部资源 "Resource": ["arn:aws:s3:::*"],如果对资源有限制,则需要自定义策略。

1. consoleAdmin

授予全部资源的,S3和管理API的完全访问权限。
等同于如下设置:

2. readonly

授权任何对象的只读权限。GET 操作必须绑定到对象,无需 listing
等同于如下设置:

比如,本策略可以支持 GET 操作某特定路径的对象(e.g. GET play/mybucket/object.file),比如:

这里故意排除了 listing 权限,因为典型用例并不希望 只读 角色可以完全检索存储资源上的所有信息(列出所有的存储桶和对象信息)。

3. readwrite

赋予MinIO Server上所有存储桶和对象的读、写权限。
等同于设置:

4. diagnostics

授予对MinIO部署执行diagnostic 诊断操作。
包括如下:

5. writeonly

赋予MinIO部署的任意 namespace (bucket and path to object) 的只写权限。PUT 操作必须绑定到特定的对象位置,无需listing。
等同于设置:

二、Policy 设置范例

使用 mc admin policy attach 来赋予用户、组对应的权限。

比如,参考如下的用户表。每个用户都赋予了 built-in policy 或 支持的 action。该表描述了用户经过认证后,客户端可以执行的操作。

User Policy Operations
Operations readwrite on finance bucket
writeonly
on audit bucket
PUT and GET on finance bucket.
PUT on audit bucket.
Auditing readonly on audit bucket GET on audit bucket
Admin admin:* All mc admin commands.

三、Policy 实践

  1. 内置策略权限列表:
内置Policy 对应配置
consoleAdmin s3:*
admin:*
readonly s3:GetBucketLocation
s3:GetObject
writeonly s3:PutObject
readwrite s3:*
diagnostics admin:ServerTrace
admin:Profiling
admin:ConsoleLog
admin:ServerInfo
admin:TopLocksInfo
admin:OBDInfo
admin:BandwidthMonitor
admin:Prometheus
  1. 策略配置范例:
操作 权限 说明
创建存储桶 手动创建,不能给权限
列出存储桶 s3:ListAllMyBuckets or s3:ListBucket 二者皆可
列出桶内对象 s3:GetBucketLocation
s3:ListBucket
上传文件 s3:GetBucketLocation
s3:PutObject
自动创建目录
下载文件 s3:GetBucketLocation
s3:GetObject
使用 fget 方法
指定桶 arn:aws:s3:::bucket-robin/* 指定资源
上一篇 下一篇

猜你喜欢

热点阅读