存储桶策略

最后更新时间:2020-04-27 18:43:36

    简介

    本文档提供关于存储桶策略的 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

    Was this page helpful?

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

    • 完全没帮助
    • 文档较差
    • 文档一般
    • 文档不错
    • 文档很好
    反馈
    帮助