PutBucketACL
更新时间 2026-04-10 20:09:06
最近更新时间: 2026-04-10 20:09:06
功能说明
PutBucketACL接口用于设置桶的访问控制列表。
注意事项
用户可以通过请求头或者请求体来设置ACL,但不能同时使用。如果使用请求头,有两种方式,一种是使用x-amz-acl,指定预定义的权限;一种是使用x-amz-grant-read, x-amz-grant-write, x-amz-grant-read-acp, x-amz-grant-write-acp, and x-amz-grant-full-control,指定具体用户设置权限,这两种方式也不可同时使用。如果使用消息体,Grant个数不能超过100个。三种方式都会覆盖原有ACL属性,包括桶所有者自身的权限,如需保留原有ACL属性,应将需要保留的原ACL添加到本次操作中(x-amz-acl方式会默认将桶所有者权限设为FULL_CONTROL,而另外两种方式则不会保留任何原ACL属性)。
请求消息样式
PUT /{Bucket}?acl HTTP/1.1
Host: xxx.zos.ctyun.cn
X-Amz-Content-SHA256: Content-SHA256
X-Amz-Date: Date
Authorization: Auth String
x-amz-acl: ACL
x-amz-grant-full-control: string
x-amz-grant-write: string
x-amz-grant-read: string
x-amz-grant-read-acp: string
x-amz-grant-write-acp: string
<AccessControlPolicy xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Owner>
<ID>string</ID>
</Owner>
<AccessControlList>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
<ID>string</ID>
</Grantee>
<Permission>string</Permission>
</Grant>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group">
<URI>string</URI>
</Grantee>
<Permission>string</Permission>
</Grant>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="AmazonCustomerByEmail">
<EmailAddress>string</EmailAddress>
</Grantee>
<Permission>string</Permission>
</Grant>
</AccessControlList>
</AccessControlPolicy>请求消息参数
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| Bucket | 参数解释: 桶的名称。 | String | 是 |
请求消息头
该请求使用公共的请求消息头,请参见如何调用API-构造请求-请求消息头。但可以带附加消息头,附加请求消息头如下表所示。
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| x-amz-acl | 参数解释: 为当前桶设置的ACL名称。 约束限制: 不能与其他 x-amz-grant-*同时使用。 取值范围: - private:私有,桶的所有者拥有完全控制的权限,其他任何人都没有访问权限。 - public-read:公共读,所有人可以获取该桶内对象列表、桶内多段任务、桶的元数据。 - public-read-write:公共读写,所有人可以获取该桶内对象列表、桶内多段任务、桶的元数据、上传对象、删除对象、初始化段任务、上传段、合并段、拷贝段、取消多段上传任务。注意:对象存储底层禁用公共读写,设置后不可匿名上传,如需使用可提工单申请。 - authenticated-read:默认情况下,上传对象至其他用户的桶中,桶拥有者没有对象的控制权限。对象拥有者为桶拥有者添加此权限控制策略后,桶所有者可以完全控制对象。 | String | 否 |
| x-amz-grant-full-control | 参数解释: 被授权用户可以对桶进行read, write, read ACP, and write ACP操作。 约束限制: 格式”id=xxx”或”emailAddress=xxx”或者”uri=xxx”以及他们的组合(用逗号连接)。 | String | 否 |
| x-amz-grant-read | 参数解释: 被授权用户可以对桶进行读操作,即列举桶内对象列表。 约束限制: 格式”id=xxx”或”emailAddress=xxx”或者”uri=xxx”以及他们的组合(用逗号连接)。 | String | 否 |
| x-amz-grant-read-acp | 参数解释: 被授权用户可以读取桶的ACL。 约束限制: 格式”id=xxx”或”emailAddress=xxx”或者”uri=xxx”以及他们的组合(用逗号连接)。 | String | 否 |
| x-amz-grant-write | 参数解释: 被授权用户可以对桶进行写操作,创建新的对象,删除或覆盖写。 约束限制: 格式”id=xxx”或”emailAddress=xxx”或者”uri=xxx”以及他们的组合(用逗号连接)。 | String | 否 |
| x-amz-grant-write-acp | 参数解释: 被授权用户可以修改桶的ACL。 约束限制: 格式”id=xxx”或”emailAddress=xxx”或者”uri=xxx”以及他们的组合(用逗号连接)。 | String | 否 |
请求消息元素
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| AccessControlPolicy | 参数解释: 授权信息的根标签。 | Container | 消息体方式下必须 |
表AccessControlPolicy
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| Owner | 参数解释: 桶的所有者。 | Container | 消息体方式下必须 |
| AccessControlList | 参数解释: 授权列表。 | Container | 消息体方式下必须 |
表Owner
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| ID | 参数解释: 桶所有者的uid。 | String | 消息体方式下必须 |
表AccessControlList
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| Grant | 参数解释: 授权信息。 | Container | 消息体方式下必须 |
表Grant
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| Grantee | 参数解释: 授权主体。 | Container | 消息体方式下必须 |
| Permission | 参数解释: 授予的权限。 取值范围: FULL_CONTROL、WRITE 、WRITE_ACP、READ、READ_ACP | String | 消息体方式下必须 |
表Grantee
| 参数名称 | 参数描述 | 类型 | 是否必须 |
|---|---|---|---|
| ID | 参数解释: 被授权用户的UID。 | String | CanonicalUser类型下必须 |
| xsi:type | 参数解释: 被授权用户类型。 取值范围: CanonicalUser 、Group | String | 消息体方式下必须 |
| URI | 参数解释: 被授权组URI。 取值范围: 所有用户:http://acs.amazonaws.com/groups/global/AllUsers 所有认证用户:http://acs.amazonaws.com/groups/global/AuthenticatedUsers | String | Group类型下必须 |
响应消息样式
HTTP/1.1 Status Code
x-amz-request-id: Request Id
Content-Type: ContentType
Content-Length: ContentLength
Date: Date
Connection: Keep-Alive响应消息头
该请求的响应消息使用公共的响应消息头,请参见如何调用API-响应结果-响应消息头。
响应消息元素
该请求的响应中不带有响应元素。
错误码
请参见调用前必知-错误码-全局错误码。