开发者社区 问答 正文

Bucket权限控制


OSS提供ACL(Access Control List)权限控制方法,OSS ACL提供Bucket级别的权限访问控制,Bucket目前有三种访问权限:public-read-write,public-read和private,它们的含义如下:

权限值中文名称权限对访问者的限制
public-read-write公共读写- 任何人(包括匿名访问)都可以对该Bucket中的Object进行读/写/删除操作。- 所有这些操作产生的费用由该Bucket的Owner承担,[backcolor=transparent]请慎用该权限。
public-read公共读,私有写- 只有该Bucket的Owner或者授权对象可以对存放在其中的Object进行写/删除操作。- 任何人(包括匿名访问)可以对Object进行读操作。
private私有读写- 只有该Bucket的Owner或者授权对象可以对存放在其中的Object进行读/写/删除操作。- 其他人在未经授权的情况下无法访问该Bucket内的Object。

说明:
  • 用户创建一个Bucket时,如果不指定Bucket权限,OSS会自动为该Bucket设置private权限。
  • 对于一个已经存在的Bucket,只有它的创建者可以通过OSS的 Put Bucket Acl接口修改该Bucket的权限。

展开
收起
青衫无名 2017-10-20 10:27:08 2102 分享 版权
阿里云 AI 助理回答

阿里云对象存储(OSS)的ACL权限控制机制允许用户灵活地管理Bucket的访问权限。您提到的三种Bucket访问权限具体含义如下:

  1. public-read-write(公共读写):

    • 这种权限设置意味着Bucket内的所有Object对任何人都是完全开放的,无论是读取、写入还是删除操作。这意味着匿名用户无需任何凭证即可执行这些操作。由于潜在的安全风险和可能产生的费用(由Bucket拥有者承担),阿里云建议谨慎使用此权限。
  2. public-read(公共读,私有写):

    • 此权限配置下,Bucket的内容可以被任何人读取,但只有Bucket的创建者或被授权的对象能够进行写入或删除操作。这种设置适用于希望内容可公开查看,但又需要保护数据不被未授权修改的场景,比如网站的静态资源存储。
  3. private(私有读写):

    • 这是最安全的默认设置,表示只有Bucket的拥有者以及被明确授权的用户才能对Bucket内的Object进行读取、写入或删除操作。其他未经认证的用户无法访问Bucket中的任何内容,适合存放敏感或私有数据。

当创建一个新的Bucket时,如果未特别指定权限,OSS会自动将其设置为private权限,确保数据的私密性。对于已存在的Bucket,其权限修改需通过调用OSS的Put Bucket Acl API接口来完成,且这一操作仅限于Bucket的创建者或者具有相应权限的账户。

综上所述,通过合理设置Bucket的ACL权限,您可以根据实际需求平衡数据的访问性和安全性。在处理公开数据与保护隐私信息时,务必审慎选择合适的权限类型。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答