FDS Restful API
Add/Delete bucket acl related api supported by FDS
Version: 1.0.0
/{bucketname}
PUT
Summary:
修改Bucket的ACL
Description:
只有Bucket的拥有者才能执行这个操作
Parameters
Name |
Located in |
Description |
Required |
Schema |
bucketname |
path |
Bucket名字 |
Yes |
string |
authorization |
header |
认证信息,计算方式参考签名认证相关文档 |
Yes |
string |
Date |
header |
请求时间 |
Yes |
string |
acl |
query |
表示该请求是为Bucket的ACL操作,值为空 |
Yes |
string |
action |
query |
执行的操作,如果是delete ,表示删除ACL,缺省为添加ACL |
No |
string |
body |
body |
需要修改的 ACL 信息 |
Yes |
AccessControlPolicy |
Responses
Code |
Description |
200 |
请求成功 |
Models
AccessControlPolicy
GrantBean
Name |
Type |
Description |
Required |
grantee |
GranteeBean |
|
No |
permission |
string |
权限描述,包括READ , WRITE , READ_OBJECTS , FULL_CONTROL , SSO_WRITE |
No |
type |
string |
授权对象类型,包括USER , GROUP |
No |
GranteeBean
Name |
Type |
Description |
Required |
id |
string |
用户ID |
No |
OwnerBean
Name |
Type |
Description |
Required |
id |
string |
所有者ID |
No |
displayName |
string |
所有者名称 |
No |
命令行示例
curl -v -X 'PUT' 'http://cnbj0.fds.api.xiaomi.com/fds-demo?acl' \
> -H 'content-type: application/json; charset=UTF-8' \
> -H 'authorization: Galaxy-V2 541xxxx45:64xxxE=' \
> -H 'date: Thu, 23 Feb 2017 10:47:34 GMT' \
> -d '{"owner":{"id":"541xxxx45"},"accessControlList":[{"grantee":{"id":"demo-user"},"permission":"READ_OBJECTS","type":"USER"}]}'
* Hostname was NOT found in DNS cache
* Trying 111.206.200.99...
* Connected to cnbj0.fds.api.xiaomi.com (111.206.200.99) port 80 (#0)
> PUT /fds-demo?acl HTTP/1.1
> User-Agent: curl/7.35.0
> Host: cnbj0.fds.api.xiaomi.com
> Accept: */*
> content-type: application/json; charset=UTF-8
> authorization: Galaxy-V2 541xxxx45:64xxxE=
> date: Thu, 23 Feb 2017 10:47:34 GMT
> Content-Length: 123
>
* upload completely sent off: 123 out of 123 bytes
< HTTP/1.1 200 OK
* Server Tengine is not blacklisted
< Server: Tengine
< Date: Thu, 23 Feb 2017 10:48:18 GMT
< Content-Length: 0
< Connection: keep-alive
< Access-Control-Allow-Credentials: true
< Access-Control-Max-Age: 1728000
< Access-Control-Allow-Methods: GET, POST, PUT, HEAD, DELETE, OPTIONS
< Access-Control-Allow-Headers: DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Content-MD5
< Access-Control-Expose-Headers: content-md5, upload-time, x-xiaomi-meta-content-length
<
* Connection #0 to host cnbj0.fds.api.xiaomi.com left intact
curl -v -X 'PUT' 'http://cnbj0.fds.api.xiaomi.com/fds-demo?acl&action=delete' \
> -H 'content-type: application/json; charset=UTF-8' \
> -H 'authorization: Galaxy-V2 541xxxx45:E8AxxxxzT0=' \
> -H 'date: Thu, 23 Feb 2017 11:13:34 GMT' \
> -d '{"owner":{"id":"541xxxx45"},"accessControlList":[{"grantee":{"id":"demo-user"},"permission":"READ_OBJECTS","type":"USER"}]}'
* Hostname was NOT found in DNS cache
* Trying 111.206.200.99...
* Connected to cnbj0.fds.api.xiaomi.com (111.206.200.99) port 80 (#0)
> PUT /fds-demo?acl&action=delete HTTP/1.1
> User-Agent: curl/7.35.0
> Host: cnbj0.fds.api.xiaomi.com
> Accept: */*
> content-type: application/json; charset=UTF-8
> authorization: Galaxy-V2 541xxxx45:E8AxxxxzT0=
> date: Thu, 23 Feb 2017 11:13:34 GMT
> Content-Length: 123
>
* upload completely sent off: 123 out of 123 bytes
< HTTP/1.1 200 OK
* Server Tengine is not blacklisted
< Server: Tengine
< Date: Thu, 23 Feb 2017 11:14:15 GMT
< Content-Length: 0
< Connection: keep-alive
< Access-Control-Allow-Credentials: true
< Access-Control-Max-Age: 1728000
< Access-Control-Allow-Methods: GET, POST, PUT, HEAD, DELETE, OPTIONS
< Access-Control-Allow-Headers: DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Content-MD5
< Access-Control-Expose-Headers: content-md5, upload-time, x-xiaomi-meta-content-length
<
* Connection #0 to host cnbj0.fds.api.xiaomi.com left intact