服务端加密sse-九游平台
功能介绍
sse-kms方式,obs使用kms(key management service)服务提供的密钥进行服务端加密。用户可以创建自定义密钥,用于sse-kms加密。如果未指定,则用户首次向区域中的桶上传sse-kms加密的对象时,obs将自动为您创建一个默认密钥。自定义密钥或默认密钥用于加密和解密kms生成的数据加解密密钥。
使用非默认iam项目下的自定义密钥对桶内对象进行sse-kms加密,只有密钥拥有者可以对加密后的对象进行上传下载类操作,非密钥拥有者不能对加密对象进行上传下载类操作。
使用默认密钥向区域中的桶上传sse-kms加密的对象时,该默认密钥归属于对象上传者,非密钥拥有者不能对使用默认密钥加密的对象进行上传下载类操作。
新增头域
sse-kms方式新增加两个头域,用户可以通过配置表1中的头域来实现sse-kms加密。
您也可以通过配置桶的默认加密方式来对桶内的对象进行加密。在为桶配置默认加密后,对于任何不带加密头域的上传对象的请求,将使用桶的默认加密配置进行加密。有关桶的加密配置的更多信息请参考设置桶的加密配置章节。
头域名称 |
头域类型 |
描述 |
---|---|---|
x-obs-server-side-encryption |
string |
参数解释: 使用该头域表示服务端加密是sse-kms方式。对象使用sse-kms方式加密。 示例:x-obs-server-side-encryption:kms 约束限制: 无 取值范围:
默认取值: kms |
x-obs-server-side-data-encryption |
string |
参数解释: 如果服务端加密是sse-kms方式,且数据加密算法为sm4,响应包含该头域。 示例:x-obs-server-side-data-encryption:sm4 约束限制: 仅在sse-kms加密方式下使用该头域。 取值范围:
默认取值: 无 |
x-obs-server-side-encryption-kms-key-id |
string |
参数描述: 当加密方式为sse-kms且使用指定密钥加密时,需输入密钥id。密钥id获取方法请参见查看密钥。 约束限制: 当您设置了x-obs-server-side-encryption头域且赋值为“kms”,即选择kms加密方式时,才能使用该头域指定加密密钥。 默认取值: 当您选择使用kms加密方式,但未设置此头域时,默认的主密钥将会被使用。如果默认主密钥不存在,系统将默认创建并使用。 |
支持头域的接口
以下接口支持配置sse-kms相关头域:
- put上传对象
- post上传对象(需要将x-obs-server-side-encryption、x-obs-server-side-data-encryption和x-obs-server-side-encryption-kms-key-id放到表单中,而不是头域中)
- 复制对象 (新增的头域针对目标对象)
- 初始化上传段任务
您可以通过设置桶策略,来限制指定桶的请求头域,如果您要对桶中的所有对象执行服务端加密限制,则可通过设置桶策略达成。例如,如果要求本租户的上传对象请求不包含服务端加密 (sse-kms) 的相关头域x-obs-server-side-encryption:"kms",则可使用以下桶策略达成:
{ "statement": [ { "sid": "denyunencryptedobjectuploads", "effect": "deny", "principal": "*", "action": "putobject", "resource": "yourbucket/*", "condition": { "stringnotequals": { "x-obs-server-side-encryption": "kms" } } } ] }
请求示例:使用默认密钥对上传的对象进行加密
1 2 3 4 5 6 7 8 9 10 11 |
put/encryp1http/1.1 user-agent:curl/7.29.0 host:examplebucket.obs.cn-north-4.myhuaweicloud.com accept:*/* date:wed,06jun201809:08:21gmt authorization:obsh4ipjx0tqththebqqcec:f3/7es6mfbw3jo4 7i5atyaqenu= x-obs-server-side-encryption:kms content-length:5242 expect:100-continue [5242byteobjectcontents] |
响应示例:使用默认密钥对上传的对象进行加密
1 2 3 4 5 6 7 8 9 |
http/1.1200ok server:obs x-obs-request-id:8df400000163d45aa81d038b6ae4c482 etag:"d8bffdfbab5345d91ac05141789d2477" x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id:cn-north-4:783fc6652cf246c096ea836694f71855:key/522d6070-5ad3-4765-9737-9312ddc72cdb x-obs-id-2:32aaaujaiaabaaaqaaeaabaaaqaaeaabctv7chmangfbagxuheibusiettnqlcqc date:wed,06jun201809:08:21gmt content-length:0 |
请求示例:使用指定密钥对上传的对象进行加密
1 2 3 4 5 6 7 8 9 10 11 12 |
put/encryp1http/1.1 user-agent:curl/7.29.0 host:examplebucket.obs.cn-north-4.myhuaweicloud.com accept:*/* date:wed,06jun201809:08:50gmt authorization:obsh4ipjx0tqththebqqcec:f3/pwjkxytygs5lpocttnei2qenu= x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id:522d6070-5ad3-4765-43a7-a7d1-ab21f498482d content-length:5242 expect:100-continue [5242byteobjectcontents] |
响应示例:使用指定密钥对上传的对象进行加密
1 2 3 4 5 6 7 8 9 |
http/1.1200ok server:obs x-obs-request-id:8df400000163d45aa81d038b6ae4c482 etag:"d8bffdfbab5345d91ac05141789d2477" x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id:cn-north-4:783fc6652cf246c096ea836694f71855:key/522d6070-5ad3-4765-43a7-a7d1-ab21f498482d x-obs-id-2:32aaaujaiaabadiaeaaba09aeaabctv7chman12bag83ibusiet5eqlcqg date:wed,06jun201809:08:50gmt content-length:0 |
请求示例:将普通对象拷贝为加密对象,且指定加密密钥
1 2 3 4 5 6 7 8 9 |
put/destobjecthttp/1.1 user-agent:curl/7.29.0 host:examplebucket.obs.cn-north-4.myhuaweicloud.com x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id:cn-north-4:783fc6652cf246c096ea836694f71855:key/522d6070-5ad3-4765-9737-9312ddc72cdb accept:*/* date:wed,06jun201809:10:29gmt authorization:obsh4ipjx0tqththebqqcec:sh3utrelagwarvi1utq325ktvci= x-obs-copy-source:/bucket/srcobject1 |
响应示例:将普通对象拷贝为加密对象,且指定加密密钥
1 2 3 4 5 6 7 8 9 |
http/1.1200ok server:obs x-obs-request-id:bb78000001648480af3900ced7f15155 etag:"d8bffdfbab5345d91ac05141789d2477" x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id:cn-north-4:783fc6652cf246c096ea836694f71855:key/522d6070-5ad3-4765-9737-9312ddc72cdb x-obs-id-2:oraxhgwdalc9wkvhqtlsmqb7i35d 32aaaujaiaabaaaqaaeaabaaaqaaeaabcs date:wed,06jun201809:10:29gmt content-length:0 |
请求示例:在url中携带签名并上传加密对象
put /destobject?accesskeyid=ui3sn1sruqe14oybktzb&expires=1534152518&x-obs-server-side-encryption=kms&signature=chvmg7/da/dcqmtrju3xngldjpg= http/1.1 user-agent: curl/7.29.0 host: examplebucket.obs.cn-north-4.myhuaweicloud.com accept: */* date: wed, 06 jun 2018 09:10:29 gmt
响应示例:在url中携带签名并上传加密对象
1 2 3 4 5 6 7 8 9 |
http/1.1200ok server:obs x-obs-request-id:bb78000001648480af3900ced7f15155 etag:"d8bffdfbab5345d91ac05141789d2477" x-obs-server-side-encryption:kms x-obs-server-side-encryption-kms-key-id:cn-north-4:783fc6652cf246c096ea836694f71855:key/522d6070-5ad3-4765-9737-9312ddc72cdb x-obs-id-2:oraxhgwdalc9wkvhqtlsmqb7i35d 32aaaujaiaabaaaqaaeaabaaaqaaeaabcs date:wed,06jun201809:10:29gmt content-length:0 |
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨