OSS云存储的权限控制
介绍了OSS云存储的权限控制方式
1、权限控制方式
针对存放在 Bucket 的 Object 的访问,OSS 提供了多种权限控制方式,包括 ACL、RAM Policy 和Bucket Policy。
- ACL:OSS 为权限控制提供访问控制列表(ACL)。ACL是基于资源的授权策略,可授予 Bucket和 Object 访问权限。 可以在创建 Bucket 或上传 Object 时设置 ACL,也可以在创建 Bucket或上传Object 后的任意时间内修改 ACL。
- RAM Policy:RAM (Resource Access Management)是阿里云提供的资源访问控制服务。RAM Policy 是基于用户的授权策略。
- Bucket Policy:Bucket Policy 是基于资源的授权策略。相比于 RAM Policy,Bucket Policy 操作简单,支持在控制台直接进行图形化配置。
2、ACL
Bucket ACL
Bucket ACL 介绍:Bucket ACL是 Bucket 级别的权限访问控制。目前有三种访问权限:public-read-write,publicread和 private,含义如下:
权限值 | 中文名称 | 权限对访问者的限制 |
public-read-write | 公共读写 | 任何人(包括匿名访问)都可以对该 Bucket 中的 Object 进行读/写/删除操作;所有这些操作产生的费用由该 Bucket 的 Owner 承担,请慎用该权限。 |
public-read | 公共读,私有写 | 只有该 Bucket 的 Owner 或者授权对象可以对存放在其中的 Object 进行写/删除操作;任何人(包括匿名访问)可以对 Object 进行读操作。 |
private | 私有读写 | 只有该 Bucket 的 Owner 或者授权对象可以对存放在其中的 Object 进行读/写/删除操作;其他人在未经授权的情况下无法访问该 Bucket 内的 Object。 |
操作方式
操作方式 | 特点 |
控制台 | Web应用程序,直观易用 |
图形化工具ossbrowser | 图形化工具,易操作 |
Java SDK | 丰富、完整的各类语言SDK demo |
Object ACL
Object ACL 介绍
Object ACL是Object 级别的权限访问控制。目前有四种访问权限:private、public-read、publicread-write、default。PutObjectACL 操作通过 Put 请求中的x-oss-object-acl 头来设置,这个操作只有 Bucket Owner 有权限执行。
Object ACL 的四种访问权限含义如下:
权限值 | 中文名称 | 权限对访问者的限制 |
public-read-write | 公共读写 | 该 ACL 表明某个 Object 是公共读写资源,即所有用户拥有对该 Object的读写权限。 |
public-read | 公共读,私有写 | 该 ACL 表明某个 Object 是公共读资源,即非 Object Owner 只有该Object 的读权限,而 Object Owner 拥有该 Object的读写权限。 |
private | 私有读写 | 该 ACL 表明某个 Object 是私有资源,即只有该 Object 的 Owner 拥有该 Object 的读写权限,其他的用户没有权限操作该 Object。 |
default | 默认权限 | 该 ACL 表明某个 Object 是遵循 Bucket 读写权限的资源,即 Bucket 是什么权限,Object 就是什么权限。 |
操作方式和上面类似 参考官方文档即可
3、RAM Policy
RAM(Resource Access Management)是阿里云提供的资源访问控制服务,RAM Policy是基于用户的授权策略。使用RAM,您可以创建、管理RAM用户,并可以控制这些RAM用户对资源的操作权限。当您的企业存在多用户协同操作资源时,使用RAM可以让您避免与其他用户共享云账号密钥,按需为用户分配最小权限,管理更加方便,权限更加明确,信息更加安全。
注意
- 如果您选择使用RAM Policy,建议您通过官方工具RAM策略编辑器快速生成所需的RAM Policy。
- RAM Policy操作比较复杂,强烈推荐您使用简单易用的图形化配置方式Bucket Policy。
4、Bucket Policy
Bucket Policy是基于资源的授权策略。相比于RAM Policy,Bucket Policy支持在控制台直接进行图形化配置操作,并且Bucket拥有者直接可以进行访问授权。
Bucket Policy常见的应用场景如下:
- 向其他账号的RAM用户授权访问。:您可以授予其他账号的RAM用户访问您的OSS资源的权限。
- 向匿名用户授予带特定IP条件限制的访问权限。:某些场景下,您需要向匿名用户授予带IP限制的访问策略。例如,企业内部的机密文档,只允许在企业内部访问,不允许在其他区域访问。由于企业内部人员较多,如果针对每个人配置RAMPolicy,工作量非常大。此时,您可以基于Bucket Policy设置带IP限制的访问策略,从而高效方便地进行授权。
Bucket Policy的配置方法和教程视频请参见使用Bucket Policy授权其他用户访问OSS资源。
更多推荐
所有评论(0)