0005-00000208

问题描述

用户在服务端KMS使用自带密钥BYOK数据加密场景下,在请求header字段x-oss-server-side-encryption-key-id携带的CMK ID是一个无效的CMK ID。

问题原因

用户在服务端KMS使用自带密钥BYOK数据加密场景下,需要在OSS上传数据过程中,在header字段x-oss-server-side-encryption-key-id携带的CMK ID需要在阿里云KMS服务中查询到对应信息,否则视为无效CMK ID。如果使用了无需的CMK ID,OSS服务端将返回该无效错误码。

问题示例

例如,您在使用服务端KMS进行加密时,采用自带密钥BYOK方式,将密钥以及数据上传到KMS服务生成一个CMK ID,用户可以通过在OSS数据上传的相关接口(例如PutObject、AppendObject、InitMultipart等),将x-oss-server-side-encryption设置KMS的同时,如果采用BYOK方式对上传数据,则需要在header携带x-oss-server-side-encryption-key-id字段中设置可用的CMK ID。

如果设置的CMK ID无法在阿里云KMS服务中查询到有效信息,将报错。

解决方案

在使用服务端使用KMS自带BYOK方式,对数据进行服务端加密上传时,除了在header中将x-oss-server-side-encryption填充为KMS,在header字段x-oss-server-side-encryption-key-id填充的CMK ID必须是在阿里云KMS生成的有效CMK ID。

相关文档

服务器端加密