更新时间:2026-10-14 GMT+08:00

产品功能

密钥管理(Key Management Service, KMS),是一种安全、可靠、简单易用的密钥托管服务,帮助您轻松创建和管理密钥,保护密钥的安全。

KMS通过使用硬件安全模块HSM(Hardware Security Module, HSM)保护密钥的安全,所有的用户密钥都由HSM中的根密钥保护,避免密钥泄露。并且HSM模块满足FIPS 140-2 Level 3安全要求。

KMS对密钥的所有操作都会进行访问控制及日志跟踪,提供所有密钥的使用记录,满足审计和合规性要求。

为什么要使用KMS?

对业务数据做加密时,会遇到一个关键难题:我们使用密钥对业务数据进行加密,但加密所用的密钥本身应如何安全存储?这也是数据加密落地过程中最核心的痛点。

要理解KMS的价值,首先需要理清加密体系中的三个核心对象:

  • 数据:指需要保护的文件、数据库、照片等业务原始数据。
  • 数据密钥DEK(Data Encryption Key):直接用于加密业务数据的密钥,业务数据由DEM完成加解密。
  • 用户主密钥CMK(Customer Master Key,也叫KMS Key):用于加密保护DEK的上层密钥,是整套加密分层体系的信任根基。

数据由数据密钥加密,数据密钥再由CMK加密保护——层级越高,密钥越关键,越需要妥善保管。而最顶层的CMK,正是KMS的核心应用场景。

KMS负责托管保护CMK,间接保护被CMK加密后的DEK。CMK的创建、权限管理、调用使用、销毁删除全部在KMS服务内部完成,明文形态的CMK永远不会离开KMS服务边界。所有针对CMK的管理与加密解密操作,都必须经过调用KMS服务接口实现。

功能特性

密钥管理提供的功能如下。

密钥全生命周期管理

密钥管理KMS提供密钥的全生命周期管理(创建、查看、启用、禁用、计划删除、取消删除自定义密钥)。

KMS支持密钥管理类型和密钥算法类型,详见密钥管理概述。

数据加解密

密钥管理KMS提供了不大于4KB的小量数据加解密和大量数据加解密的能力。详见如何使用KMS加解密。

签名验签

签名验签是一种加密机制,是保证数据传输安全性以及完整性的重要手段。通过签名验签的方式,可以防止信息在传输过程中被篡改或伪造。仅支持通过API调用接口使用。

密钥别名

别名是为用户密钥设置的简称,是密钥的一种标识。您可以在API接口的调用中使用别名代替密钥ID。原有密钥别名修改为密钥名称。

密钥标签

标签用于标识自定义密钥。为自定义密钥添加标签,可以方便用户对自定义密钥进行分类和跟踪,并按标签汇总自定义密钥的使用情况。

密钥轮换

KMS提供了密钥轮换功能,您可以通过定期轮转来加强密钥使用的安全性,有效地提升业务数据的安全性。默认情况下,自定义密钥的自动密钥轮换处于禁用状态。当您启用(或重新启用)密钥轮换时,KMS会根据您设置的轮换周期自动轮换自定义密钥。

密钥授权

用户可以为其他IAM用户或账号创建授权,授予其使用自身的自定义密钥的权限,一个自定义密钥下最多可创建100个授权。

密钥区域性

跨区域创建副本密钥,是指在密码安全中心中,通过对主密钥进行复制而生成的密钥。副本密钥是与主密钥具有相同密钥材料的密钥。它通常用于跨区域的数据加解密操作,以便在不同区域中使用相同的密钥进行数据处理。副本密钥在密码安全中心中提供了灵活性和高可用性,但需要合理管理以确保安全性和合规性。

生成硬件真随机数

真随机数生成器是一种通过物理过程而不是计算机程序来生成随机数字的设备,用以生成完全不可预测的随机数。通过API调用生成8~8192bit范围内的随机数。

KMS架构与应用