問題描述
請求中x-oss-object-acl要求標頭缺失或值為空白。
問題原因
比如您發起了PutObjectAcl請求,請求通過x-oss-object-acl要求標頭來指定目標Object的存取權限,如果請求中缺少該要求標頭,或該要求標頭的參數為空白字串,就會導致介面報錯。
問題樣本
比如您發起了如下請求:
PUT /test-object?acl HTTP/1.1
x-oss-object-acl:
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 29 Apr 2015 05:21:12 GMT
Authorization: OSS qn6q**************:77Dv****************上述請求中x-oss-object-acl要求標頭的值是Null 字元串,這不是一個合法的ACL名稱,所以介面返回該錯誤。
解決方案
檢查請求中x-oss-object-acl要求標頭的值是否合法,目前支援的值有:
default(預設):Object遵循所在儲存空間的存取權限。
private:Object是私人資源。只有Object的擁有者和授權使用者有該Object的讀寫權限,其他使用者沒有許可權操作該Object。
public-read:Object是公用讀取資源。只有Object的擁有者和授權使用者有該Object的讀寫權限,其他使用者只有該Object的讀許可權。請謹慎使用該許可權。
public-read-write:Object是公用讀寫資源。所有使用者都有該Object的讀寫權限。請謹慎使用該許可權。