云产品集成KMS加密概述

2025-01-07 07:17:31

密钥管理服务(KMS)与云硬盘、对象存储、弹性文件、关系型数据库MYSQL版等产品实现了服务端集成,在使用这些云服务时,可通过密钥管理服务实现对数据的加解密,并集中使用密钥管理服务(KMS)对密钥进行管理。

支持服务端加密的密钥类型

服务端加密支持选择默认密钥及用户自行创建的用户主密钥,具体可选择的密钥类型如下。

密钥创建者

密钥类型

密钥算法

云产品

默认密钥

AES_256(默认)

用户自行创建

用户主密钥-软件

AES_256

用户主密钥-硬件

AES_256

注意:

当前仅数据库产品支持选择用户自建用户主密钥进行服务端加密,其他存储产品均只能选择默认密钥进行加密。

Ÿ   默认密钥

ü  系统为云产品自动创建的用于服务端加密的默认密钥,默认密钥与云产品对应,每个天翼云账号下的每个云产品在每个资源支持创建1个默认密钥。

ü  默认密钥的别名定义为alias_<云产品代码>,例如alias_ecs。

ü  默认密钥的密钥材料由KMS生成,不支持导入外部密钥材料,同时不支持自动轮转、启用/禁用、计划删除、自定义别名等操作。

Ÿ   用户主密钥

ü  云产品加密时,可选用户在KMS服务中自建的用户主密钥,密钥类型为对称密钥,算法支持AES_256,保护级别可选软件保护、硬件保护。

ü  用户主密钥按照KMS服务标准资费进行计费,请您确保账户余额充足,避免因KMS服务冻结导致云产品无法正常调用KMS服务进行加解密操作,云产品可能会出现异常

ü  用户主密钥支持计划删除,操作计划删除前请确保该密钥非未被用于云产品加密,避免删除后导致云产品无法正常加解密而出现异常。为避免误删,您可以为密钥开启删除保护功能。

云产品服务端加密的流程

通常情况下,云产品采用信封加密的机制实现对云产品数据的加密,即通过KMS生成数据密钥,并应用数据密钥在云产品服务端完成加解密操作,并将数据密钥密文及数据密文落盘存储,实现流程如下示意图。

                                               

1.     用户在KMS中创建一个用户主密钥,或由云产品触发创建默认密钥。

2.     云产品调用KMS的GenerateDataKey接口请求数据密钥。

3.     KMS返回数据密钥,包含数据密钥明文和数据密钥密文。其中数据密钥密文,是由指定的密钥加密数据密钥明文生成的。

4.     云产品使用数据密钥明文加密数据明文,并将数据密钥密文(由KMS使用密钥加密)与数据密文(由云产品使用数据密钥加密)一同写入持久化存储介质中。


puOaVku4e9Fn