控制台指南

最佳实践

开发者指南

API 文档

SDK 文档

存储桶策略

最近更新时间:2020-10-09 09:14:01

简介

本文档提供关于存储桶策略的 API 概览以及 SDK 示例代码。

API 操作名 操作描述
PUT Bucket policy 设置存储桶策略 设置指定存储桶的权限策略
GET Bucket policy 查询存储桶策略 查询指定存储桶的权限策略
DELETE Bucket policy 删除存储桶策略 删除指定存储桶的权限策略

设置存储桶策略

功能说明

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

请求示例

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/&ltAppId>:<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
目录