功能描述
PUT Bucket encryption 接口用于设置指定存储桶下的默认加密配置。
要执行此接口,必须拥有 PutBucketEncryption 权限。默认情况下,Bucket 的持有者直接拥有权限使用该 API 接口,Bucket 持有者也可以将权限授予其他用户。
请求
请求示例
PUT /?encryption HTTP 1.1Host: <BucketName-APPID>.cos.<Region>.myqcloud.comDate: GMT DateAuthorization: Auth String
说明:
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com,其中 <BucketName-APPID> 为带 APPID 后缀的存储桶名字,例如 examplebucket-1250000000,可参阅 存储桶概览 > 基本信息 和 存储桶概述 > 存储桶命名规范 文档;<Region> 为 COS 的可用地域,可参阅 地域和访问域名 文档。
Authorization: Auth String(详情请参见 请求签名 文档)。
请求参数
此接口无请求参数。
请求头
请求体
用户在请求体中使用 XML 语言设置存储桶默认加密配置信息。加密配置信息主要为加密项。
以下是用于设置 SSE-COS 的请求体:
<ServerSideEncryptionConfiguration><Rule><ApplyServerSideEncryptionByDefault><SSEAlgorithm>AES256|KMS</SSEAlgorithm><KMSMasterKeyID>String</KMSMasterKeyID></ApplyServerSideEncryptionByDefault></Rule></ServerSideEncryptionConfiguration>
具体元素如下:
元素名称 | 父节点 | 描述 | 类型 | 是否必选 |
ServerSideEncryptionConfiguration | 无 | 包含默认加密的配置参数。 | Container | 是 |
Rule | ServerSideEncryptionConfiguration | 默认的服务端加密配置规则。 | Container | 是 |
ApplyServerSideEncryptionByDefault | ServerSideEncryptionConfiguration.Rule | 服务端加密的默认配置信息。 | Container | 是 |
SSEAlgorithm | ServerSideEncryptionConfiguration.Rule.ApplyServerSideEncryptionByDefault | 支持枚举值 AES256、KMS。 AES256 代表使用 SSE-COS 模式,加密算法为 AES256。 KMS 代表 SSE-KMS 模式。 | String | 是 |
KMSMasterKeyID | ServerSideEncryptionConfiguration.Rule.ApplyServerSideEncryptionByDefault | String | 否 |
响应
响应头
响应体
该请求的响应体返回为空。
错误码
实际案例
请求
以下示例表示给存储桶 examplebucket-1250000000 设置 SSE-COS 加密。
PUT /?encryption HTTP 1.1Host: examplebucket-1250000000.cos.ap-beijing.myqcloud.comDate: Mon, 17 Jun 2019 08:37:35 GMTAuthorization: signatureValue<ServerSideEncryptionConfiguration><Rule><ApplyServerSideEncryptionByDefault><SSEAlgorithm>AES256</SSEAlgorithm></ApplyServerSideEncryptionByDefault></Rule></ServerSideEncryptionConfiguration>
响应
HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 0Date: Mon, 17 Jun 2019 08:37:36 GMTServer: tencent-cosx-cos-request-id: NWQwNzUxNTBfMzdiMDJhMDlfOWM0Nl85NDFk****