设置Object的访问权限
更新时间:2021-12-29
接口说明
此命令用于设置Object的访问权限。目前BOS支持两种方式设置ACL。第一种是使用Canned Acl,在PutObjectAcl的时候,通过头域的"x-bce-acl"或者"x-bce-grant-permission'来设置object访问权限,当前可设置的权限包括private和public-read,两种类型的header不可以同时在一个请求中出现。第二种方式是上传一个ACL文件,文件格式参见ACL文件格式,目前ACL文件只支持accessControlList,grantee,id,permission字段。
目前不支持在同一请求中同时设置canned acl和上传ACL文件。
注意事项:
- 只有Bucket的拥有者和被授予FULL_CONTROL权限的用户才能设置Object的ACL权限。
- 在上传Object时,Object权限会默认为空,如果没有设置Object的权限,即当Object权限为空时,默认以Bucket权限为准。
- 当Object权限和Bucket权限不一致时,以Object权限为准。
- 归档存储类型对象在取回未完成,或者刚上传归档类型文件(时长参考取回时长)时,不能设置Object acl。
请求URI
PUT /v1/{bucketName}/{objectKey}?acl
请求头参数
参数名称 | 参数类型 | 是否必须 | 描述 | 示例值 |
---|---|---|---|---|
xBceAcl | String | 否 | Object设置的ACL权限,支持:private、public-read | "xBceAcl_example" |
xBceGrantRead | String | 否 | 授权读的Object id,支持多个id,以逗号分隔 | "xBceGrantRead_example" |
xBceGrantFullControl | String | 否 | 授权控制权限的Object id,支持多个id,以逗号分隔 | "xBceGrantFullControl_example" |
请求体参数
无
响应体参数
无
请求示例
无
响应示例
无
错误码
请参考通用错误码