GetBucketPolicy用于获取指定存储空间(Bucket)的权限策略(Policy)。

Bucket Policy是基于资源的授权策略。Bucket Policy常见的应用场景如下:

  • 向其他账号的RAM用户授权访问。

    您可以授予其他账号的RAM用户访问您的OSS资源的权限。

  • 向匿名用户授予带特定IP条件限制的访问权限。

    某些场景下,您需要向匿名用户授予带IP限制的访问策略。例如,企业内部的机密文档,只允许在企业内部访问,不允许在其他区域访问。由于企业内部人员较多,如果针对每个人配置RAM Policy,工作量非常大。此时,您可以基于Bucket Policy设置带IP限制的访问策略,从而高效方便地进行授权。

有关Bucket Policy的配置详情及场景案例,请参见使用Bucket Policy授权其他用户访问OSS资源。有关Policy语法,请参见权限策略语法和结构

请求语法

GET /?policy
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

示例

  • 请求示例
    GET /?policy
    Host: oss-example.oss-cn-hangzhou.aliyuncs.com
    Date: Tue, 13 Nov 2018 09:09:13 GMT
    Authorization: OSS xxxxxxxxx:xxxxxxxxxxx
  • 返回示例
    200 (OK)
    server: AliyunOSS
    x-oss-server-time: 24
    connection: keep-alive
    x-oss-request-id: 5C6E9847BE0EBCD13DA90C11
    date: Thu, 21 Feb 2019 12:23:35 GMT
    content-type: application/json
    {
      "Version":"1",
      "Statement":[
        {
          "Action":[
            "oss:PutObject",
            "oss:GetObject"
          ],
          "Effect":"Deny",
          "Principal":["1234567890"],
          "Resource":["acs:oss:*:1234567890:*/*"]
        }
      ]
    }

错误码

错误码 HTTP状态码 描述
NoSuchBucketPolicy 404 请求的Bucket没有配置权限策略(Policy)。