桶策略

桶策略

桶策略是作用于所配置的OS2桶及桶内对象的。OS2桶拥有者通过桶策略可为IAM用户或其他账号授权桶及桶内对象的操作权限。

1. 桶策略的设置方式

桶策略提供三种方式,方便用户快速设置桶策略:

  • 只读模式: 被授权用户将拥有桶内指定对象的读权限,对应可以执行获取对象内容及元数据操作。
  • 读写模式: 被授权用户将拥有桶内指定对象的读写权限,对应可以执行获取对象内容及元数据、上传对象、删除对象等操作。
  • 自定义模式: 自定义配置被授权用户和其拥有桶或对象的操作权限,由效果、被授权用户、资源、动作和条件5个桶策略基本参数共同决定。

2. 桶策略参数说明

效果 (Effect)

桶策略的效果,具体表现为 Allow(允许) 和 Deny(拒绝) 请求。

  • Allow:指定本条桶策略描述的权限为接受请求。
  • Deny:指定本条桶策略描述的权限为拒绝请求。

当桶策略中既有Allow又有Deny的授权语句时,遵循Deny优先的原则。其判定逻辑如下:

说明 :

  1. 用户发起访问请求。 OS2从桶策略中优先寻找效果设置为拒绝(显式拒绝)的策略。如果找到一个显式拒绝该访问请求的策略,OS2将直接返回拒绝访问的决定,访问请求结束。
  2. 如果没有显式拒绝该访问的策略,OS2将寻找允许该访问请求的策略。 如果找到显式允许的策略,OS2返回允许访问的决定,随后由OS2继续处理该请求。
  3. 如果找不到显式允许的策略,最终返回拒绝访问的决定,访问请求结束。

被授权用户 (Principal)

被授权用户,指桶策略作用的用户,可以是帐号,也可以是IAM用户。

  • 指定当前账号的IAM用户
    当桶策略的“被授权用户”类型设置“当前账号”时,可以选择配置当前账号下的IAM用户(可多选),即为当前账号的IAM用户授权桶策略。

  • 指定其他账号 当桶策略的“被授权用户”类型设置“其他账号”时,可以为设置一个其他账号。若是只想为其他账号下的IAM用户授权,则需再配置用户ID。

资源 (Resource)

在指定资源时,资源可以是当前整个桶,也可以是桶内对象。

  • 指定资源为桶
    指定资源为当前整个桶时,桶策略动作需配置为桶相关的动作,配置方法为选择配置到整个桶。

  • 指定资源为对象
    指定资源为桶内对象时,桶策略动作需配置为对象相关的动作,配置格式如下:

  • 对象: 直接输入对象名称(包括文件夹名称)

    例如:指定的资源是桶中 imgs-folder文件夹下的 example.jpg文件,则在资源输入框中输入以下内容:

    imgs-folder/example.jpg

  • 对象集:当指定给对象集时,使用通配符 。通配符 表示0个或多个字符的任意组合。
    其输入格式为:

  • 仅使用一个通配符 ,表示桶中所有对象。

  • 使用 对象名称前缀 + ,表示桶中所有以此前缀开头的对象。示例:imgs﹡ ,代表以imgs开头的所有对象

  • 动作 (Action)

桶策略动作与资源相关,当资源为当前整个桶时,桶策略动作需配置为桶相关的动作;当资源为桶内对象时,桶策略动作需配置为对象相关的动作。

  • 与桶相关的动作
API Action 描述
Get Bucket Objects ListObjects 列举桶内对象
Put Bucket ACL PutBucketACL 设置桶ACL
Get Bucket ACL GetBucketACL 获取桶ACL
Delete Bucket DeleteBucket 删除桶
Get Bucket Multipart Uploads ListMultipartUploads 列举所有执行中的Multipart Upload事件
Put Bucket Lifecycle PutBucketLifecycle 设置桶生命周期
Get Bucket Lifecycle GetBucketLifecycle 获取桶生命周期
Delete Bucket Lifecycle DeleteBucketLifecycle 删除桶生命周期
  • 与对象相关的动作
API Action 描述
Put Object Put Object 上传对象 可用作于PUT上传,初始化上传分片任务,上传分片,合并分片。
Initiate Multipart Upload
Upload Part
Complete Multipart Upload
Get Object GetObject 获取对象内容,获取对象元数据。
Get Object Info
Copy Object CopyObject 复制对象
Upload Part Copy
Delete Object DeleteObject 删除对象
Put Object ACL PutObjectACL 设置对象ACL
Get Object ACL GetObjectACL 获取对象ACL
Get Multipart Upload Parts ListParts 列举UploadId对应的所有已经成功上传的分片
Abort Multipart Upload AbortMultipartUpload 终止分片上传
Restore Object RestoreObject 解冻对象

条件 (Condition)

除了指定效果、被授权用户、资源、动作外,桶策略还可以指定生效条件。只有当条件设置的表达式与访问请求中的值匹配时,桶策略才生效。条件是可选参数,用户可以根据业务需要选择是否使用。

关键字 说明
SourceIp 指定普通IP网段,支持通配符星号
UserAgent 指定HTTP User-Agent头。
类型:字符串。
SecureTransport 请求的协议类型。如果请求是HTTP协议,则为HTTP,如果是HTTPS协议,则为HTTPS。
Prefix 用于ListObjects请求时,列举指定前缀的Object。
AccessId 请求中携带的AccessId。

桶策略设定和读取方法,可参考控制台操作文档:访问权限控制管理创建桶策略

个结果匹配 ""

    无结果匹配 ""