tencent cloud

对象存储

动态与公告
产品动态
产品公告
产品简介
产品概述
功能概览
应用场景
产品优势
基本概念
地域和访问域名
规格与限制
产品计费
计费概述
计费方式
计费项
免费额度
计费示例
查看和下载账单
欠费说明
常见问题
快速入门
控制台快速入门
COSBrowser 快速入门
用户指南
创建请求
存储桶
对象
数据管理
批量处理
全球加速
监控与告警
运维中心
数据处理
内容审核
智能工具箱
数据工作流
应用集成
工具指南
工具概览
环境安装与配置
COSBrowser 工具
COSCLI 工具
COSCMD 工具
COS Migration 工具
FTP Server 工具
Hadoop 工具
COSDistCp 工具
HDFS TO COS 工具
GooseFS-Lite 工具
在线辅助工具
自助诊断工具
实践教程
概览
访问控制与权限管理
性能优化
使用 AWS S3 SDK 访问 COS
数据容灾备份
域名管理实践
图片处理实践
COS 音视频播放器实践
工作流实践
数据直传
内容审核实践
数据安全
数据校验
大数据实践
COS 成本优化解决方案
在第三方应用中使用 COS
迁移指南
本地数据迁移至 COS
第三方云存储数据迁移至 COS
以 URL 作为源地址的数据迁移至 COS
COS 之间数据迁移
Hadoop 文件系统与 COS 之间的数据迁移
数据湖存储
云原生数据湖
元数据加速
数据加速器 GooseFS
数据处理
数据处理概述
图片处理
媒体处理
内容审核
文件处理
文档处理
故障处理
获取 RequestId 操作指引
通过外网上传文件至 COS 缓慢
访问 COS 时返回403错误码
资源访问异常
POST Object 常见异常
API 文档
简介
公共请求头部
公共响应头部
错误码
请求签名
操作列表
Service 接口
Bucket 接口
Object 接口
批量处理接口
数据处理接口
任务与工作流
内容审核接口
云查毒接口
SDK 文档
SDK 概览
准备工作
Android SDK
C SDK
C++ SDK
.NET(C#) SDK
Flutter SDK
Go SDK
iOS SDK
Java SDK
JavaScript SDK
Node.js SDK
PHP SDK
Python SDK
React Native SDK
小程序 SDK
错误码
鸿蒙(Harmony) SDK
终端 SDK 质量优化
安全与合规
数据容灾
数据安全
访问管理
常见问题
热门问题
一般性问题
计费计量问题
域名合规问题
存储桶配置问题
域名和 CDN 问题
文件操作问题
日志监控问题
权限管理问题
数据处理问题
数据安全问题
预签名 URL 问题
SDK 类问题
工具类问题
API 类问题
服务协议
Service Level Agreement
隐私政策
数据处理和安全协议
联系我们
词汇表

PUT Bucket acl

PDF
聚焦模式
字号
最后更新时间: 2023-12-20 18:01:44

功能描述

PUT Bucket acl 接口用来写入存储桶的访问控制列表(ACL),您可以通过请求头 x-cos-aclx-cos-grant-* 传入 ACL 信息,或者通过请求体以 XML 格式传入 ACL 信息。
注意
通过请求头设置 ACL 和通过请求体设置 ACL 两种方式只能选择其中一种。
PUT Bucket acl 是一个覆盖操作,传入新的 ACL 将覆盖原有 ACL。
支持对腾讯云 CAM 主账号、匿名用户、子用户授予权限,如需授予用户组权限请参见 为用户组添加/解除策略。有关 ACL 的详细说明,请参见 ACL 概述
该 API 的请求者需要对存储桶有写入 ACL 权限。


请求

请求示例

示例一
PUT /?acl HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: GMT Date
Content-Length: 0
Authorization: Auth String
示例二
PUT /?acl HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: GMT Date
Content-Type: application/xml
Content-Length: Content Length
Content-MD5: MD5
Authorization: Auth String

[Request Body]
说明
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com,其中 <BucketName-APPID> 为带 APPID 后缀的存储桶名字,例如 examplebucket-1250000000,可参阅 存储桶概览 > 基本信息存储桶概述 > 存储桶命名规范 文档;<Region> 为 COS 的可用地域,可参阅 地域和访问域名 文档。
Authorization: Auth String(详情请参见 请求签名 文档)。

请求参数

此接口无请求参数。

请求头

此接口除使用公共请求头部外,还支持以下请求头部,了解公共请求头部详情请参见 公共请求头部 文档。
名称
描述
类型
是否必选
x-cos-acl
定义存储桶的访问控制列表(ACL)属性。枚举值请参见 ACL 概述 文档中存储桶的预设 ACL 部分,例如 private, public-read 等,默认为 private
Enum
x-cos-grant-read
赋予被授权者读取存储桶的权限。若被授权者为主账号,格式为 id="[OwnerUin]",如 id="100000000001";若被授权者为子账号,格式为 id="[OwnerUin/GrantsUin]",如 id="100000000001/100000000011"。可使用半角逗号(,)分隔多组被授权者,如 id="100000000001",id="100000000002"
string
x-cos-grant-write
赋予被授权者写入存储桶的权限。若被授权者为主账号,格式为 id="[OwnerUin]",如 id="100000000001";若被授权者为子账号,格式为 id="[OwnerUin/GrantsUin]",如 id="100000000001/100000000011"。可使用半角逗号(,)分隔多组被授权者,如 id="100000000001",id="100000000002"
string
x-cos-grant-read-acp
赋予被授权者读取存储桶的访问控制列表(ACL)的权限。若被授权者为主账号,格式为 id="[OwnerUin]",如 id="100000000001";若被授权者为子账号,格式为 id="[OwnerUin/GrantsUin]",如 id="100000000001/100000000011"。可使用半角逗号(,)分隔多组被授权者,如 id="100000000001",id="100000000002"
string
x-cos-grant-write-acp
赋予被授权者写入存储桶的访问控制列表(ACL)的权限。若被授权者为主账号,格式为 id="[OwnerUin]",如 id="100000000001";若被授权者为子账号,格式为 id="[OwnerUin/GrantsUin]",如 id="100000000001/100000000011"。可使用半角逗号(,)分隔多组被授权者,如 id="100000000001",id="100000000002"
string
x-cos-grant-full-control
赋予被授权者操作存储桶的所有权限。若被授权者为主账号,格式为 id="[OwnerUin]",如 id="100000000001";若被授权者为子账号,格式为 id="[OwnerUin/GrantsUin]",如 id="100000000001/100000000011"。可使用半角逗号(,)分隔多组被授权者,如 id="100000000001",id="100000000002"
string

请求体

提交 application/xml 请求数据,包含存储桶所有者和完整的授权信息。
<AccessControlPolicy>
<Owner>
<ID>string</ID>
</Owner>
<AccessControlList>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group">
<URI>string</URI>
</Grantee>
<Permission>Enum</Permission>
</Grant>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
<ID>string</ID>
</Grantee>
<Permission>Enum</Permission>
</Grant>
</AccessControlList>
</AccessControlPolicy>
具体的节点描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
AccessControlPolicy
包含 PUT Bucket acl 操作的所有请求信息
Container
Container 节点 AccessControlPolicy 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
Owner
AccessControlPolicy
存储桶持有者信息
Container
AccessControlList
AccessControlPolicy
被授权者信息与权限信息
Container
Container 节点 Owner 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
ID
AccessControlPolicy.Owner
存储桶持有者的完整 ID,格式为 qcs::cam::uin/[OwnerUin]:uin/[OwnerUin],如 qcs::cam::uin/100000000001:uin/100000000001
string
Container 节点 AccessControlList 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
Grant
AccessControlPolicy.AccessControlList
单个授权信息,一个 AccessControlList 最多只能拥有100条 Grant
Container
Container 节点 AccessControlList.Grant 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
Grantee
AccessControlPolicy.AccessControlList.Grant
被授权者信息,xsi:type 可指定为 Group 或 CanonicalUser,当指定为 Group 时子节点包括且仅允许包括 URI,当指定为 CanonicalUser 时子节点包括且仅允许包括 ID
Container
Permission
AccessControlPolicy.AccessControlList.Grant
授予的权限信息。枚举值请参见 ACL 概述 文档中存储桶的操作部分,如 WRITE,FULL_CONTROL 等
Enum
Container 节点 AccessControlList.Grant.Grantee 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
URI
AccessControlPolicy.AccessControlList.Grant.Grantee
预设用户组。请参见 ACL 概述 文档中预设用户组部分,如 http://cam.qcloud.com/groups/global/AllUsershttp://cam.qcloud.com/groups/global/AuthenticatedUsers
string
Granteexsi:type 指定为 Group 时必选
ID
AccessControlPolicy.AccessControlList.Grant.Grantee
被授权者的完整 ID,格式为 qcs::cam::uin/[OwnerUin]:uin/[OwnerUin],如 qcs::cam::uin/100000000001:uin/100000000001
string
Granteexsi:type 指定为 CanonicalUser 时必选

响应

响应头

此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

响应体

此接口响应体为空。

错误码

此接口遵循统一的错误响应和错误码,详情请参见 错误码 文档。

实际案例

案例一:通过请求头设置 ACL

请求

PUT /?acl HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Mon, 17 Jun 2019 08:30:12 GMT
x-cos-acl: public-read
x-cos-grant-write: id="100000000002"
x-cos-grant-read-acp: id="100000000002"
Content-Length: 0
Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1560760212;1560767412&q-key-time=1560760212;1560767412&q-header-list=content-length;date;host;x-cos-acl;x-cos-grant-read-acp;x-cos-grant-write&q-url-param-list=acl&q-signature=5b10c6ea4e6c9630c085e1f85476c76d8c4e****
Connection: close

响应

HTTP/1.1 200 OK
Content-Length: 0
Connection: close
Date: Mon, 17 Jun 2019 08:30:13 GMT
Server: tencent-cos
x-cos-request-id: NWQwNzRmOTRfODhjMjJhMDlfMWRlYl81Mzc0****

案例二:通过请求体设置 ACL

请求

PUT /?acl HTTP/1.1
Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.com
Date: Mon, 17 Jun 2019 08:30:13 GMT
Content-Type: application/xml
Content-Length: 812
Content-MD5: 1qS+8SqnivarcO6Z11R0nw==
Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1560760213;1560767413&q-key-time=1560760213;1560767413&q-header-list=content-length;content-md5;content-type;date;host&q-url-param-list=acl&q-signature=70f96b91823f3715905df125d96fe447554e****
Connection: close

<AccessControlPolicy>
<Owner>
<ID>qcs::cam::uin/100000000001:uin/100000000001</ID>
</Owner>
<AccessControlList>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group">
<URI>http://cam.qcloud.com/groups/global/AllUsers</URI>
</Grantee>
<Permission>READ</Permission>
</Grant>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
<ID>qcs::cam::uin/100000000002:uin/100000000002</ID>
</Grantee>
<Permission>WRITE</Permission>
</Grant>
<Grant>
<Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser">
<ID>qcs::cam::uin/100000000002:uin/100000000002</ID>
</Grantee>
<Permission>READ_ACP</Permission>
</Grant>
</AccessControlList>
</AccessControlPolicy>

响应

HTTP/1.1 200 OK
Content-Length: 0
Connection: close
Date: Mon, 17 Jun 2019 08:30:13 GMT
Server: tencent-cos
x-cos-request-id: NWQwNzRmOTVfMzBjMDJhMDlfOTM3MF8yNzdj****


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈