Cloud Key Management Service 概览

借助 Cloud Key Management Service (Cloud KMS),您可以创建和管理加密密钥,以便在兼容的 Google Cloud 服务和您自己的应用中使用。使用 Cloud KMS,您可以执行以下操作:

  • 生成软件或硬件密钥、将现有密钥导入 Cloud KMS,或关联兼容的外部密钥管理 (EKM) 系统中的外部密钥。

  • 在具有 CMEK 集成的 Google Cloud 产品中使用客户管理的加密密钥 (CMEK)。CMEK 集成使用您的 CMEK 密钥来加密或“封装”数据加密密钥 (DEK)。使用密钥加密密钥 (KEK) 封装 DEK 的过程称为信封加密

  • 使用 Cloud KMS 密钥执行加密和解密操作。例如,您可以使用 Cloud KMS API 或客户端库将您的 Cloud KMS 密钥用于客户端加密

  • 使用 Cloud KMS 密钥创建或验证数字签名消息身份验证代码 (MAC) 签名

根据您的需求选择合适的加密方式

您可以根据下表确定每种用例的加密类型。根据您的需求,最佳解决方案可能包括混合多种加密方法。例如,您可以对最敏感数据使用软件密钥,对最敏感数据使用硬件密钥或外部密钥。如需详细了解本部分介绍的加密选项,请参阅本页面中的在 Google Cloud 中保护数据

加密类型 费用 兼容的服务 特性
Google Cloud 默认加密 已包含 所有用于存储客户数据的 Google Cloud 服务
  • 无需任何配置。
  • 自动加密保存在任何 Google Cloud 服务中的客户数据。
  • 自动轮替密钥并重新加密数据。
  • 支持使用 AES-256 进行加密。
  • 已验证 FIPS 140-2 1 级。
客户管理的加密密钥 - 软件
(Cloud KMS 密钥)
低 - 每个密钥版本 $0.06 30 多种服务
客户管理的加密密钥 - 硬件
(Cloud HSM 密钥)
中 - 每个密钥版本每月 1.00 至 2.50 美元 30 多种服务
客户管理的加密密钥 - 外部
(Cloud EKM 密钥)
高 - 每个密钥版本每月 3.00 美元 20 多种服务
  • 您可以控制 IAM 角色和权限;启用、停用或销毁密钥版本。
  • 系统绝不会将密钥发送给 Google。
  • 密钥材料位于兼容的外部密钥管理 (EKM) 提供程序中。
  • 兼容的 Google Cloud 服务通过互联网Virtual Private Cloud (VPC) 连接到您的 EKM 提供商。
  • 支持使用对称密钥进行加密和解密
  • 与 Cloud EKM 和 EKM 提供方协调以手动轮替密钥。
  • 已通过 FIPS 140-2 2 级或 FIPS 140-2 3 级验证,具体取决于 EKM。
使用 Cloud KMS 密钥进行客户端加密 有效密钥版本的费用取决于密钥的保护级别。 在应用中使用客户端库
  • 您可以控制自动轮替密钥的时间安排;IAM 角色和权限;启用、停用或销毁密钥版本。
  • 支持使用对称和不对称密钥进行加密、解密、签名和签名验证
  • 具体功能因密钥保护级别而异。
客户提供的加密密钥 可能会增加与 Compute Engine 或 Cloud Storage 相关的费用
  • 在需要时提供密钥材料。
  • 密钥材料位于内存中 - Google 不会将您的密钥永久存储在我们的服务器上。
机密计算 每个机密虚拟机会产生额外费用;可能会增加日志用量和相关费用
  • 为处理敏感数据或工作负载的虚拟机提供使用中加密功能。
  • Google 无法访问密钥。

在 Google Cloud 中保护数据

Google Cloud 默认加密

默认情况下,Google Cloud 中的静态数据受密钥库(Google 的内部密钥管理服务)中的密钥保护。密钥库中的密钥由 Google 自动管理,您无需进行任何配置。大多数服务会自动为您轮替密钥。密钥库支持主密钥版本和有限数量的旧密钥版本。主密钥版本用于加密新的数据加密密钥。较旧的密钥版本仍然可用于解密现有的数据加密密钥。

此默认加密使用经验证符合 FIPS 140-2 1 级要求的加密模块。如果您没有更高级别的保护的特定要求,使用默认加密功能即可满足您的需求,而无需支付额外费用。

客户管理的加密密钥 (CMEK)

对于需要更高级别控制或保护的用例,您可以在兼容的服务中使用客户管理的 Cloud KMS 密钥。在 CMEK 集成中使用 Cloud KMS 密钥时,您可以使用组织政策来确保按照政策的规定使用 CMEK 密钥。例如,您可以设置组织政策以确保兼容的 Google Cloud 资源使用您的 Cloud KMS 密钥进行加密。组织政策还可以指定密钥资源必须位于的项目中。

所提供的功能和保护级别取决于密钥的保护级别:

  • 软件密钥 - 您可以在 Cloud KMS 中生成软件密钥,并在所有 Google Cloud 位置中使用它们。您可以通过自动轮替创建对称密钥,也可以使用手动轮替创建非对称密钥。客户管理的软件密钥使用 FIPS 140-2 Level 1 验证的软件加密模块。您还可以控制轮替周期、Identity and Access Management (IAM) 角色和权限,以及控制密钥的组织政策。您可以将软件密钥与超过 30 项兼容的 Google Cloud 资源搭配使用。

  • 导入的软件密钥 - 您可以导入在其他位置创建的可在 Cloud KMS 中使用的软件密钥。您可以导入新的密钥版本以手动轮替导入的密钥。您可以使用 IAM 角色和权限以及组织政策来管理已导入的密钥的使用。

  • 硬件密钥和 Cloud HSM - 您可以在 FIPS 140-2 Level 3 硬件安全模块 (HSM) 集群中生成硬件密钥。您可以控制轮替周期、IAM 角色和权限,以及用于控制密钥的组织政策。当您使用 Cloud HSM 创建 HSM 密钥时,Google 会代您管理 HSM 集群。您可以将 HSM 密钥与超过 30 个兼容的 Google Cloud 资源(支持软件密钥的相同服务)搭配使用。为了最大限度地提高安全性,请使用硬件密钥。

  • 外部密钥和 Cloud EKM - 您可以使用外部密钥管理器 (EKM) 中的密钥。Cloud EKM 可让您使用支持的密钥管理器中保存的密钥来保护 Google Cloud 资源。您可以通过互联网Virtual Private Cloud (VPC) 连接到 EKM。某些支持软件或硬件密钥的 Google Cloud 服务不支持 Cloud EKM 密钥。

Cloud KMS 密钥

您可以通过 Cloud KMS 客户端库Cloud KMS API 在自定义应用中使用 Cloud KMS 密钥。通过客户端库和 API,您可以加密和解密数据,对数据进行签名和验证签名。

客户提供的加密密钥 (CSEK)

Cloud StorageCompute Engine 可以使用客户提供的加密密钥 (CSEK)。借助客户提供的加密密钥,您可以存储密钥材料,并在需要时将其提供给 Cloud Storage 或 Compute Engine。Google 不会以任何方式存储您的 CSEK。

机密计算

在 Compute Engine、GKE 和 Dataproc 中,您可以使用机密计算平台对使用中的数据进行加密。机密计算可确保您的数据在处理时始终保持私密和加密状态。