1001
iPhone_iPad_Mac_手機_平板_蘋果apple
PutObjectACL__關於Object操作_API 參考_對象存儲 OSS-阿裏雲
Put Object ACL接口用於修改Object的訪問權限。目前Object有三種訪問權限:private, public-read, public-read-write。Put Object ACL操作通過Put請求中的“x-oss-object-acl”頭來設置,這個操作隻有Bucket Owner有權限執行。如果操作成功,則返回200;否則返回相應的錯誤碼和提示信息。
請求語法:
PUT /ObjectName?acl HTTP/1.1
x-oss-object-acl: Permission
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
Object ACL釋義
名稱 | 描述 |
---|---|
private | 該ACL表明某個Object是私有資源,即隻有該Object的Owner擁有該Object的讀寫權限,其他的用戶沒有權限操作該Object |
public-read | 該ACL表明某個Object是公共讀資源,即非Object Owner隻有該Object的讀權限,而Object Owner擁有該Object的讀寫權限 |
public-read-write | 該ACL表明某個Object是公共讀寫資源,即所有用戶擁有對該Object的讀寫權限 |
default | 該ACL表明某個Object是遵循Bucket讀寫權限的資源,即Bucket是什麼權限,Object就是什麼權限 |
細節分析:
- Object的讀操作包括:GetObject,HeadObject,CopyObject和UploadPartCopy中的對source object的讀;Object的寫操作包括:PutObject,PostObject,AppendObject,DeleteObject,DeleteMultipleObjects,CompleteMultipartUpload以及CopyObject對新的Object的寫。
- x-oss-object-acl中權限的值必須在上述3種權限中。如果有不屬於上述3種的權限,OSS返回400 Bad Request消息,錯誤碼:InvalidArgument。
- 用戶不僅可以通過PutObjectACL接口來設置Object ACL,還可以在Object的寫操作時,在請求頭中帶上x-oss-object-acl來設置Object ACL,效果與PutObjectA ACL等同。例如PutObject時在請求頭中帶上x-oss-object-acl可以在上傳一個Object的同時設置某個Object的ACL。
- 對某個Object沒有讀權限的用戶讀取某個Object時,OSS返回 403 Forbidden消息,錯誤碼:AccessDenied,提示:You do not have read permission on this object.
- 對某個Object沒有寫權限的用戶寫某個Object時,OSS返回 403 Forbidden消息,錯誤碼:AccessDenied,提示:You do not have write permission on this object.
- 隻有Bucket Owner采用權限調用PutObjectACL來修改該Bucket下某個Object的ACL。非Bucket Owner調用PutObjectACL時,OSS返回 403 Forbidden消息,錯誤碼:AccessDenied,提示:You do not have write acl permission on this object.
- Object ACL優先級高於Bucket ACL。例如Bucket ACL是private的,而Object ACL是public-read-write的,則訪問這個Object時,先判斷Object的ACL,所以所有用戶都擁有這個Object的訪問權限,即使這個Bucket是private bucket。如果某個Object從來沒設置過ACL,則訪問權限遵循Bucket ACL。
示例
請求示例:
PUT /test-object?acl HTTP/1.1
x-oss-object-acl: public-read
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Wed, 29 Apr 2015 05:21:12 GMT
Authorization: OSS qn6qrrqxo2oawuk53otfjbyc:KU5h8YMUC78M30dXqf3JxrTZHiA=
返回示例:
HTTP/1.1 200 OK
x-oss-request-id: 559CC9BDC755F95A64485981
Date: Wed, 29 Apr 2015 05:21:12 GMT
Content-Length: 0
Connection: keep-alive
Server: AliyunOSS
最後更新:2016-11-23 17:16:08
上一篇:
GetObjectMeta__關於Object操作_API 參考_對象存儲 OSS-阿裏雲
下一篇:
GetObjectACL__關於Object操作_API 參考_對象存儲 OSS-阿裏雲
查詢實例規格族列表__其他接口_API 參考_雲服務器 ECS-阿裏雲
快速開始-瀏覽器__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲
刪除類目__媒體類目接口_API使用手冊_視頻點播-阿裏雲
查詢推流曆史__直播流操作接口_API 手冊_CDN-阿裏雲
修改NAT網關屬性__NAT網關相關接口_API參考_專有網絡 VPC-阿裏雲
導入本地鏡像__鏡像_用戶指南_雲服務器 ECS-阿裏雲
快照 2.0 產品規格升級__快照_產品簡介_雲服務器 ECS-阿裏雲
DescribeLoadBalancerAttribute__LoadBalancer相關API_API 參考_負載均衡-阿裏雲
報錯信息匯總__常見問題_短信服務-阿裏雲
通知報警__監控報警_用戶指南_企業級分布式應用服務 EDAS-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲