全部產品
Search
文件中心

:PutBucketAcl

更新時間:Jun 19, 2024

PutBucketAcl介面用於設定或修改儲存空間(Bucket)的存取權限(ACL)。

注意事項

使用PutBucketAcl介面時,有如下注意事項:

  • 該介面的要求者需要對Bucket有寫入ACL的許可權。

  • PutBucketAcl為覆蓋語義,即新傳入的ACL將覆蓋原有的ACL。

  • 如果指定要設定ACL的Bucket不存在,調用該介面時將建立Bucket。

請求文法

PUT /?acl HTTP/1.1
x-oss-acl: Permission
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

要求標頭

名稱

類型

是否必選

樣本值

描述

x-oss-acl

字串

private

指定Bucket的存取權限ACL。

PutBucketAcl介面通過Put請求中的x-oss-acl要求標頭來設定存取權限,如果沒有該要求標頭,則存取權限設定不生效。

取值:public-read-write、public-read、private。

  • public-read-write(公用讀寫):所有使用者都有該Bucket內的檔案的讀寫權限。請謹慎使用該存取權限。

  • public-read(公用讀取):Bucket的擁有者和授權使用者有該Bucket內的檔案的讀寫權限,其他使用者只有該Bucket內的檔案的讀許可權。請謹慎使用該存取權限。

  • private:Bucket的擁有者和授權使用者有該Bucket內的檔案的讀寫權限,其他使用者沒有許可權操作該Bucket內的檔案。

此介面涉及的其他公用要求標頭,請參見公用要求標頭(Common Request Headers)

回應標頭

此介面僅涉及公用回應標頭,請參見公用回應標頭(Common Response Headers)

樣本

請求樣本

PUT /?acl HTTP/1.1
x-oss-acl: public-read
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Fri, 24 Feb 2012 03:21:12 GMT
Authorization: OSS qn6q**************:77Dv****************

返回樣本

  • 正常返回樣本

    HTTP/1.1 200 OK
    x-oss-request-id: 534B371674E88A4D8906****
    Date: Fri, 24 Feb 2012 03:21:12 GMT
    Content-Length: 0
    Connection: keep-alive
    Server: AliyunOSS
  • 設定讀寫權限無效的返回樣本

    HTTP/1.1 400 Bad Request
    x-oss-request-id: 56594298207FB3044385****
    Date: Fri, 24 Feb 2012 03:55:00 GMT
    Content-Length: 309
    Content-Type: text/xml; charset=UTF-8
    Connection: keep-alive
    Server: AliyunOSS
    
    <?xml version="1.0" encoding="UTF-8"?>
    <Error>
      <Code>InvalidArgument</Code>
      <Message>no such bucket access control exists</Message>
      <RequestId>5***9</RequestId>
      <HostId>***-test.example.com</HostId>
      <ArgumentName>x-oss-acl</ArgumentName>
      <ArgumentValue>error-acl</ArgumentValue>
    </Error>

SDK

此介面所對應的各語言SDK如下:

錯誤碼

錯誤碼

HTTP狀態代碼

描述

AccessDenied

403

  • 發起PutBucketAcl請求時,沒有傳入使用者驗證資訊。

  • 沒有發起PutBucketAcl請求的許可權。