设置对象的权限

此PUT操作为bucket 中的 object设置访问控制权限(ACL)。只有bucket的所有者可以调用该接口。你可以使用下面两种方式来设置对象的权限;

  • 在请求体中指定 ACL。

  • 使用请求头部来设置访问权限。

    注意 : 不能同时使用以上两种方式。

请求

  • 请求语法

    • 内容

        PUT /{ObjectKey}?acl HTTP/1.1
        Host: {BucketName}.{Endpoint}
        Date: {date}
        Authorization: {SignatureValue}    
      
    • 描述

        Endpoint:参考与region地域的关系
        SignatureValue:参考签名算法
      
  • 请求参数

  • 非公共请求头

名称 类型 是否必须 描述
x-oss-acl 字符串 用于对象的预定义权限。
默认值:private
有效值:private; public-read; public-read-write
(提示)为用户授予权限的功能,在系统设计中,需要考虑,暂时不用实现,
可以参考(x-oss-grant-read、x-oss-grant-write、x-oss-grant-full-control)
备注:当同时在header中和Body中设置了ACL,最后只有header中的
会生效。当同时在header中设置了x-oss-acl和x-oss-grant-*时,后者生
效。对于大部分用户,使用x-oss-acl在header中设置预设的ACL就可以
满足大部分需求

响应

  • 非公共响应头

  • 响应体

示例

  • 请求

      PUT /my-image.jpg ?acl HTTP/1.1
      Host: oss-example.oss-cn-beijing.inspurcloud.com
      x-oss-acl:public-read;
      Content-Length: 1660
      Date: Fri, 26 Dec 2014 06:34:32 GMT
      Authorization: authorization string     
    
  • 响应

      HTTP/1.1 200 OK
      Date: Fri, 26 Dec 2014 06:34:32 GMT
      x-oss-request-id: dbea4ce4ec23415b9e454ecfa25ec4d9
      Content-Length: 0
      Server:
      [data]
    

错误码

错误码 描述 状态码 描述
... ... ... ...