查询对象ACL

最近更新时间: 2025-02-18 16:02:00

功能描述

GET Object acl 接口用来获取某个存储桶下的某个对象的访问权限,只有存储桶的持有者才有权限操作。

请求

请求示例

  • 复制
    复制成功
GET /<ObjectKey>?acl HTTP/1.1
Host: <BucketName-APPID>.<Endpoint>
Date: GMT Date
Authorization: Auth String

说明:

Authorization: Auth String (详情请参阅请求签名文档)。

请求头

公共头部

该请求操作的实现使用公共请求头,了解公共请求头详情请参阅 公共请求头部 文档。

非公共头部

必选头部 该请求操作的实现使用如下必选头部:

名称描述类型必选
Authorization签名串String

请求体

该请求的请求体为空。

响应

响应头

公共响应头

该响应使用公共响应头,了解公共响应头详情请参阅 公共响应头部 文档。

特有响应头

该响应无特殊的响应头。

响应体

该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:

  • 复制
    复制成功
<AccessControlPolicy>
  <Owner>
    <ID>qcs::cam::uin/100000000001:uin/100000000001</ID>
    <DisplayName>qcs::cam::uin/100000000001:uin/100000000001</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group">
           <URI>http://cam.qcloud.com/groups/global/AllUsers</URI>
      </Grantee>
      <Permission>READ</Permission>
    </Grant>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>qcs::cam::uin/100000000001:uin/100000000001</ID>
        <DisplayName>qcs::cam::uin/100000000001:uin/100000000001</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
     </Grant>
  </AccessControlList>
</AccessControlPolicy>

具体的数据内容如下:

节点名称(关键字)父节点描述类型
AccessControlPolicy保存 GET Object acl 结果的容器Container

Container 节点 AccessControlPolicy 的内容:

节点名称(关键字)父节点描述类型
OwnerAccessControlPolicyObject 持有者信息Container
AccessControlListAccessControlPolicy被授权者信息与权限信息Container

Container 节点 Owner 的内容:

节点名称(关键字)父节点描述类型
IDAccessControlPolicy.OwnerObject 持有者 ID,
格式为:qcs::cam::uin/:uin/ 如果是主帐号, 和 是同一个值
String
DisplayNameAccessControlPolicy.OwnerObject 持有者的名称String

Container 节点 AccessControlList 的内容:

节点名称(关键字)父节点描述类型
GrantAccessControlPolicy.AccessControlList单个 Object 的授权信息。一个 AccessControlList 可以拥有 100 条 GrantContainer

Container 节点 Grant 的内容:

节点名称(关键字)父节点描述类型
GranteeAccessControlPolicy.AccessControlList.Grant说明被授权者的信息。type 类型可以为 RootAccount,Subaccount;当 type 类型为 RootAccount 时,ID 中指定的是主帐号;当 type 类型为 Subaccount 时,ID 中指定的是子帐号Container
PermissionAccessControlPolicy.AccessControlList.Grant指明授予被授权者的权限信息,枚举值:READ,FULL_CONTROLString

Container 节点 Grantee 的内容:

节点名称(关键字)父节点描述类型
URIAccessControlPolicy.AccessControlList.Grant.Grantee指定所有用户String
IDAccessControlPolicy.AccessControlList.Grant.Grantee用户的 ID,格式为:qcs::cam::uin/:uin/ 如果是主帐号, 和 是同一个值。String
DisplayNameAccessControlPolicy.AccessControlList.Grant.Grantee用户的名称String

实际案例

请求

  • 复制
    复制成功
GET /exampleobject?acl HTTP/1.1
Host: <BucketName-APPID>.<Endpoint>
Date: Fri, 10 Mar 2016 09:45:46 GMT
Authorization: q-sign-algorithm=sha1&q-ak=AKIDxxxxxxxxxxxxx&q-sign-time=1484213027;32557109027&q-key-time=1484213027;32557109027&q-header-list=host&q-url-param-list=acl&q-signature=dcc1eb2022b79cb2a780bf062d3a40e120b4065

响应

  • 复制
    复制成功
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 266
Connection: keep-alive
Date: Fri, 10 Mar 2016 09:45:46 GMT
Server: tencent-cos
x-cos-request-id: NTg3NzRiMjVfYmRjMzVfMTViMl82ZGZmNw==

<AccessControlPolicy>
  <Owner>
    <ID>qcs::cam::uin/100000000001:uin/100000000001</ID>
    <DisplayName>qcs::cam::uin/100000000001:uin/100000000001</DisplayName>
  </Owner>
  <AccessControlList>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group">
           <URI>http://cam.qcloud.com/groups/global/AllUsers</URI>
      </Grantee>
      <Permission>READ</Permission>
    </Grant>
    <Grant>
      <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
        <ID>qcs::cam::uin/100000000001:uin/100000000001</ID>
        <DisplayName>qcs::cam::uin/100000000001:uin/100000000001</DisplayName>
      </Grantee>
      <Permission>FULL_CONTROL</Permission>
     </Grant>
  </AccessControlList>
</AccessControlPolicy>