最近更新时间:2025-04-08 18:04:43
此接口用于为存储桶设置服务端加密。在存储桶设置服务端加密后,上传文件时,若没有指定文件的服务端加密方式,文件会默认继承存储桶的服务端加密方式。
创建桶加密必须是桶所有者或者拥有ks3:PutBucketEncryption
权限。
关于服务端加密的更多信息,请参见加密。
PUT /?encryption HTTP/1.1
Host: {Bucketname}.{endpoint}
Authorization: {SignatureValue}
Content-Type: application/xml
Content-Length: {length}
Date: {date}
ServerSideEncryptionConfiguration in the request body
该接口不使用请求参数。
该接口除公共请求头外,还需要以下请求头:
名称 | 描述 | 是否必选 |
---|---|---|
Content-MD5 | Body里Data的128位MD5 Digest,再用Base64编码。这个Header必须存在,以便检查Body是否损坏。详见RFC-1864
| 是 |
一段描述ServerSideEncryptionConfiguration的XML:
<ServerSideEncryptionConfiguration>
<Rule>
<ApplyServerSideEncryptionByDefault>
<SSEAlgorithm>AES256</SSEAlgorithm>
</ApplyServerSideEncryptionByDefault>
</Rule>
</ServerSideEncryptionConfiguration>
XML中的节点具体描述如下:
参数名称 | 是否必选 | 参数描述 |
---|---|---|
ServerSideEncryptionConfiguration | 是 | 桶的默认加密配置的根元素。 |
Rule | 是 | 桶的默认加密配置的子元素。 |
ApplyServerSideEncryptionByDefault | 是 | 桶的默认加密配置的子元素。 |
SSEAlgorithm | 是 | 桶的默认加密配置要使用的服务端加密算法。 |
该接口仅涉及常用响应头部。
该接口不返回响应内容。
PUT /?encryption HTTP/1.1
Host: {BucketName}.{endpoint}
Date: {date}
Authorization: {SignatureValue}
Content-length: {length}
Content-MD5: {md5}
<ServerSideEncryptionConfiguration>
<Rule>
<ApplyServerSideEncryptionByDefault>
<SSEAlgorithm>AES256</SSEAlgorithm>
</ApplyServerSideEncryptionByDefault>
</Rule>
</ServerSideEncryptionConfiguration>
HTTP/1.1 200 Ok
Server: ks3
Date: Tue, 07 Jul 2020 07:29:13 GMT
Content-Length: 11
HTTP 状态码 | 报错信息 | 错误原因 |
403 Forbidden | Access Denied | 没有权限/缺少权限。 |
403 Forbidden | SignatureDoesNotMatch | 签名计算有误;AK/SK填写错误。 |
400 Bad Request | MalformedXML | 设置的桶加密的XML格式有误。 |
400 Bad Parameter | InvalidArgument | 参数写错,例如AES256写成AES255。 |
纯净模式