腾讯云对象存储访问权限设置

针对存放在Bucket中的Object的访问,腾讯云对象存储提供了多种权限控制方式,包括ACL、IAMPolilcy和BucketPolicy。

  • ACL:腾讯云对象存储为权限控制提供访问控制列表(ACL)。ACL是基于Bucket的授权策略,可授予Bucket访问权限为:私有读写,公有读私有写,公有读写。你可以在控制台中创建Bucket时设置ACL,也可以在创建Bucket后的任意时间内修改ACL,操作详情请见创建存储空间-指定空间访问权限。

  • IAMPolicy:IAM(IdentityandAccessManagement)是腾讯云提供的一项用户身份管理与资源访问控制服务。IAMPolicy是基于用户的授权策略。通过设置IAMPolicy,你可以集中管理你的用户(比如员工、系统或应用程序),以及控制用户可以访问你名下哪些资源的权限。比如能够限制你的用户只拥有对某一个Bucket的读权限。子账号是从属于主账号的,并且这些账号下不能拥有实际的任何资源,所有资源都属于主账号,计费主体也是主账号。

  • BucketPolicy:BucketPolicy是基于资源的授权策略。相比于IAMPolicy,BucketPolicy操作简单,仅可对腾讯云对象存储中资源(包括Bucket与Object)进行授权。如果你是主账号或者被授予Bucketpolicy设置权限,可通过BucketPolicy完成授权。同时,BucketPolicy支持向其他账号、其他账号的IAM用户、匿名用户授予访问权限,并且可附加指定相关IP与referer限制的访问权限。

IAMPolicy与BucketPolicy基本概念

二者基本概念一致,但语法有细微不同。

基本概念

授予访问权限,指的是用户可以决定什么人、在何种条件下、对哪些资源、执行具体操作的控制能力组合。因此描述一个访问权限行为,通常包括四个元素:身份、资源、操作、条件(可选)。

腾讯云的身份

用户申请腾讯云账号时,系统会创建一个用于登录腾讯云服务的主账号身份。主账号可通过用户管理功能对具有不同职责的分类用户进行管理。用户类型包括子用户和群组等,具体定义请参阅访访问管理-身份管理。

对象存储(腾讯云对象存储)的资源

存储空间Bucket和对象Object是对象存储的基本资源,还包括存储空间的子资源。

存储空间的子资源包括:

资源名称描述acl和policy存储空间的访问控制信息website存储空间的静态网站托管配置cors存储空间的跨域配置信息Encryption存储空间的默认加密配置Replication存储空间跨区域复制配置镜像回源存储空间镜像回源配置自定义域名存储空间自定义域名配置对象存储的操作

对象存储提供了一系列针对资源的API操作,每个action可能对应一个或一组对象存储API。

访问控制私有原则

  • 在默认情况下,对象存储(腾讯云对象存储)中的资源都是私有的。

  • 资源拥有者(创建Bucket的腾讯云主账号)具备对该资源的最高权限,资源拥有者可以编辑和修改访问策略,为其他人或匿名用户授予访问权限。

  • 使用腾讯云子账号创建Bucket或上传对象时,其父级主账号是资源拥有者。

  • 存储空间(Bucket)拥有者可以授予其他腾讯云主账号上传对象的权限(即跨账户上传)。这种情况下,对象的拥有者仍然是存储空间拥有者即主账号。