帮你快速理解、总结文档立即下载

存储桶策略

最近更新时间:2026-10-21 19:43:33
本文档已由 AI 辅助审校
我的收藏

简介

本文档提供关于存储桶策略的 API 概览以及 SDK 示例代码。
API
操作名
操作描述
设置存储桶策略
设置指定存储桶的权限策略
查询存储桶策略
查询指定存储桶的权限策略
删除存储桶策略
删除指定存储桶的权限策略

设置存储桶策略

功能说明

设置指定存储桶的权限策略。

请求示例

cos.putBucketPolicy({
Bucket: 'examplebucket-1250000000', /* 必须 */
Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */
Policy: {
"version": "2.0",
"Statement": [{
"Effect": "allow",
"Principal": {
"qcs": ["qcs::cam::uin/100000000001:uin/100000000001"]
},
"Action": [
"name/cos:PutObject",
"name/cos:InitiateMultipartUpload",
"name/cos:ListMultipartUploads",
"name/cos:ListParts",
"name/cos:UploadPart",
"name/cos:CompleteMultipartUpload"
],
"Resource": ["qcs::cos:ap-guangzhou:uid/1250000000:examplebucket-1250000000/*"],
}]
},
}, function(err, data) {
console.log(err || data);
});

参数说明

参数名称
描述
类型
是否必填
Bucket
设置存储桶策略的存储桶,格式:BucketName-APPID
String
是
Region
存储桶所在地域,枚举值请参见 地域和访问域名
String
是
Policy
权限策略,详情请参见 访问管理策略语法
Object
是
version
版本号,固定2.0
String
是
Statement
权限策略声明列表
ObjectArray
是
Effect
效力,枚举值:allow、deny
String
是
Principal
身份信息
ObjectArray
是
qcs
身份信息标识字符串
格式:qcs::cam::uin/100000000001:uin/100000000011
其中100000000001 是主账号,100000000011是子账号
String
是
Action
策略生效的相关 Action 列表,支持通配符*
StringArray
是
Resource
相关的资源标识字符串列表
格式:qcs::cos:<Region>:uid/<AppId>:<ShortBucketName>/*
例如:qcs::cos:ap-beijing:uid/1250000000:examplebucket/*
StringArray
是
condition
约束条件,可以不填,具体说明请参见 condition 说明
String
否

回调函数说明

function(err, data) { ... }
参数名
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误,如果请求成功则为空,更多详情请参见 错误码 文档
Object
statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
headers
请求返回的头部信息
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
headers
请求返回的头部信息
Object

查询存储桶策略

功能说明

查询指定存储桶的权限策略。

请求示例

cos.getBucketPolicy({
Bucket: 'examplebucket-1250000000', /* 必须 */
Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */
}, function(err, data) {
console.log(err || data);
});

返回示例

{
"Policy": {
"version": "2.0",
"Statement": [{
"Action": [
"name/cos:PutObject",
"name/cos:InitiateMultipartUpload",
"name/cos:ListMultipartUploads",
"name/cos:ListParts",
"name/cos:UploadPart",
"name/cos:CompleteMultipartUpload"
],
"Effect": "allow",
"Principal": {
"qcs": ["qcs::cam::uin/100000000001:uin/100000000001"]
},
"Resource": ["qcs::cos:ap-beijing:uid/1250000000:examplebucket-1250000000/*"],
"Sid": "costs-1539833197000000307620-46518-39"
}]
},
"statusCode": 200,
"headers": {}
}

参数说明

参数名称
描述
类型
是否必填
Bucket
查询存储桶权限策略的存储桶,格式:BucketName-APPID
String
是
Region
存储桶所在地域,枚举值请参见 地域和访问域名
String
是

回调函数说明

function(err, data) { ... }
参数名
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误,如果请求成功则为空,更多详情请参见 错误码 文档
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
Policy
权限策略,详情请参见 访问管理策略语法
Object
version
版本号,固定2.0
String
Statement
权限策略声明列表
ObjectArray
Effect
效力,枚举值:allow、deny
String
Principal
身份信息
ObjectArray
qcs
身份信息标识字符串
格式:qcs::cam::uin/100000000001:uin/100000000011
其中100000000001是主账号,100000000011是子账号
String
Action
策略生效的相关 Action 列表,支持通配符*
StringArray
Resource
相关的资源标识字符串列表
格式:qcs::cos:<Region>:uid/<AppId>:<ShortBucketName>/*
例如:qcs::cos:ap-beijing:uid/1250000000:examplebucket/*
StringArray
condition
约束条件,可以不填,具体说明请参见 condition 说明
ObjectArray

删除存储桶策略

功能说明

DELETE Bucket policy 请求删除指定存储桶的权限策略。
注意:
只有 Bucket 所有者有权限发起该请求。如果权限策略不存在,将返回204 No Content。

请求示例

cos.deleteBucketPolicy({
Bucket: 'examplebucket-1250000000', /* 必须 */
Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */
}, function(err, data) {
console.log(err || data);
});

参数说明

参数名
参数描述
类型
是否必填
Bucket
被删除存储桶权限策略的存储桶,格式:BucketName-APPID
String
是
Region
存储桶所在地域,枚举值请参见 地域和访问域名
String
是

回调函数说明

function(err, data) { ... }
参数名
参数描述
类型
err
请求发生错误时返回的对象,包括网络错误和业务错误,如果请求成功则为空,更多详情请参见 错误码 文档
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object
data
请求成功时返回的对象,如果请求发生错误,则为空
Object
- statusCode
请求返回的 HTTP 状态码,例如200、403、404等
Number
- headers
请求返回的头部信息
Object