最近更新时间:2024.03.21 15:12:56
首次发布时间:2023.10.12 19:40:16
此接口用于为存储桶设置服务端加密。在存储桶设置服务端加密后,在该存储桶上传文件时,如果您没有指定文件的服务端加密方式,文件会默认继承存储桶的服务端加密方式。目前支持在存储桶配置 KMS 托管密钥的服务端加密(SSE-KMS)和 TOS 托管密钥的服务端加密(SSE-TOS)。
关于服务端加密的更多信息,请参见服务端加密概述。
PutBucketEncryption
权限的用户才能调用 PutBucketEncryption 接口。默认情况下,存储桶的所有者直接拥有 PutBucketEncryption
权限,存储桶所有者也可以将该权限授予给其他用户。PUT /?encryption HTTPS Host: bucketname.tos-cn-beijing.volces.com Date: Fri, 30 Jul 2021 08:05:36 +0000 Authorization: authorization string Content-MD5: OolRtfRnEQlFUQVcEd5Q**** { "Rule":{ "ApplyServerSideEncryptionByDefault":{ "SSEAlgorithm":"kms", "KMSMasterKeyID":"trn:kms:cn-beijing:200000****:keyrings/ring-test/keys/key-test" } } }
该请求需要在消息头中设置请求元素的 Content-MD5 值,与上传的请求元素的 MD5 值进行比较,如果不相等,将返回错误。其他使用的公共请求消息头,请参见公共参数。
名称 | 位置 | 参数类型 | 是否必选 | 示例值 | 说明 |
---|---|---|---|---|---|
encryption | Query | String | 是 | - | 代表 PutBucketEncryption 请求的特殊标识。 |
名称 | 参数类型 | 是否必选 | 示例值 | 说明 |
---|---|---|---|---|
Rule | Array | 是 | - | 桶加密规则信息。 |
ApplyServerSideEncryptionByDefault | Array | 是 | - | 服务端加密的配置信息。 |
SSEAlgorithm | String | 是 | AES256 | 服务端加密的默认加密方式,取值说明如下:
说明 使用 SSE-KMS 进行服务端加密会产生 API 调用费用,创建 KMS 密钥会产生密钥托管费用,由 KMS 收取,更多信息,请参见 KMS 计费说明。 |
KMSMasterKeyID | String | 否 | trn:kms:cn-beijing:200000*****:keyrings/ring-test/keys/key-test | 指定 SSE-KMS 加密使用的主密钥,格式为
您可以在 KMS 控制台创建主密钥,关于 KMS 密钥的详细介绍,请参见 KMS 快速入门。 说明 当 |
该请求返回的公共响应消息头,请参见公共参数。
该请求响应中无消息元素。
PUT /?encryption HTTPS Host: bucketname.tos-cn-beijing.volces.com Date: Fri, 30 Jul 2021 08:05:36 +0000 Authorization: authorization string Content-MD5: OolRtfRnEQlFUQVcEd5Q**** { "Rule":{ "ApplyServerSideEncryptionByDefault":{ "SSEAlgorithm":"kms", "KMSMasterKeyID":"trn:kms:cn-beijing:200000****:keyrings/ring-test/keys/key-test" } } }
HTTPS 200 OK x-tos-id-2: f91b0c03a01300c1-a444ed0 x-tos-request-id: f91b0c03a01300c1-a444ed0 Date: Fri, 30 Jul 2021 06:45:39 GMT server: TosServer Content-Length: 0