更新时间:2024-10-21 gmt 08:00

设置对象acl-九游平台

功能介绍

obs支持对对象的操作进行权限控制。默认情况下,只有对象的创建者才有该对象的读写权限。用户也可以设置其他的访问策略,比如对一个对象可以设置公共访问策略,允许所有人对其都有读权限。sse-kms方式加密的对象即使设置了acl,跨租户也不生效。

obs用户在上传对象时可以设置权限控制策略,也可以通过acl操作api接口对已存在的对象更改或者获取acl(access control list) 。一个对象的acl最多支持100条grant授权。

本节将介绍如何更改对象acl,改变对象的访问权限。

多版本

默认情况下,更改的是最新版本的对象acl。要设置指定版本的对象acl,请求可以带参数versionid。

请求消息格式

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
put/objectname?aclhttp/1.1
host:bucketname.obs.cn-north-4.myhuaweicloud.com
date:date
authorization:authorization


id
true



id
permission

请求消息参数

请求参数说明如表1所示。

表1 请求消息参数

参数名称

描述

是否必选

versionid

对象的版本号。表示更改指定版本的对象acl。

类型:string

请求消息头

该请求使用公共请求消息头,具体参见表3

请求消息元素

该请求消息通过带消息元素来传递对象的acl信息,元素的意义如表2所示。

表2 请求消息元素

元素名称

描述

是否必选

owner

桶的所有者信息,包含id。

类型:xml

id

用户domainid。

类型:string

grant

用于标记用户及用户的权限。单个对象的acl,grant元素不能超过100个。

类型:xml

grantee

记录用户信息。

类型:xml

canned

向所有人授予权限。

取值范围:everyone。

类型:string

delivered

对象acl是否继承桶的acl。

类型:boolean

默认:true。

permission

授予权限。

取值范围:read | read_acp | write_acp | full_control

类型:string

accesscontrollist

访问控制列表,包含grant、 grantee、permission三个元素。

类型:xml

响应消息样式

1
2
3
http/1.1status_code
content-length:length
content-type:application/xml

响应消息头

该请求的响应消息使用公共消息头,具体请参考表1

除公共响应消息头之外,还可能使用如表3中的消息头。

表3 附加响应消息头

消息头名称

描述

x-obs-version-id

被更改acl的对象的版本号。

类型:string

响应消息元素

该请求的响应消息中不带有消息元素。

错误响应消息

该请求的响应无特殊错误,所有错误已经包含在表2中。

请求示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
put/obj2?aclhttp/1.1
user-agent:curl/7.29.0
host:examplebucket.obs.cn-north-4.myhuaweicloud.com
accept:*/*
date:wed,01jul201504:42:34gmt
authorization:obsh4ipjx0tqththebqqcec:8xaodun1ofjkwhm8yhtn0qecy9m=
content-length:727
xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/">

b4bf1b36d9ca43d984fbcb9491b6fce9
false



b4bf1b36d9ca43d984fbcb9491b6fce9
full_control


783fc6652cf246c096ea836694f71855
read


everyone
read

响应示例

1
2
3
4
5
6
http/1.1200ok
server:obs
x-obs-request-id:8df400000163d3f0fd2a03d2d30b0542
x-obs-id-2:32aaaugaiaabaaaqaaeaabaaaqaaeaabctjcqtmsa1xrpirmrjdvcewvzyjbztdd
date:wed,01jul201504:42:34gmt
content-length:0

请求示例:已启用版本控制

put /object01?acl&versionid=g001118a6803675affffd3043f7f91d0 http/1.1
authorization: obs h4ipjx0tqththebqqcec:iqspeubl66pwxdapxjrkk6hlcn4=
user-agent: curl/7.29.0
host: examplebucket.obs.region.myhuaweicloud.com
date: wed, 01 jul 2015 02:37:22 gmt
content-type: application/xml
 

    
        d029cb567d46458sp0x75800575ee4cf
    
    false
    
        
            
                f98sx63gg849422e8f330af1349c588f
            
            full_control
        
        
            
                fa558a82a84946sn98u30af195as3hi5
            
            read
        
        
            
                everyone
            
            read
        
    

响应示例:已启用版本控制

x-obs-id-2: 32aaaqaaeaabsaagaaeaabaaaqaaeaabcsmpl2dv6zzlm2hmurxktai258mpqmrp
x-obs-request-id: 0000018a2a73af59d3085c8f8abf0c65
server: obs
content-length: 0
date: wed, 01 jul 2015 02:37:22 gmt
x-obs-version-id: g001118a6803675affffd3043f7f91d0

相关文档

网站地图