对静态数据和传输中的数据进行加密
本文档介绍了 Google Security Operations 如何使用静态加密和传输中加密来保护客户数据。
本指南适用于想要验证默认数据保护并管理 Google SecOps 加密密钥的安全工程师和管理员。本文档介绍了如何保护静态数据和传输中的数据,以及如何在 Cloud Key Management Service 中使用客户管理的加密密钥 (CMEK)。按照本指南操作,您可以掌控加密密钥生命周期,并满足组织合规性要求。成功实施可增强您的数据安全状况并降低合规风险。
常见使用场景
以下使用情形介绍了安全团队如何在 Google SecOps 中使用加密控制措施:
验证默认加密是否符合合规性审核要求
- 目标:确认存储在磁盘上并通过网络传输的所有客户数据均使用行业标准加密算法和协议自动受到保护。
- 价值:满足基本的监管和安全要求,无需手动配置或产生运营开销。
使用 CMEK 控制加密密钥生命周期
- 目标:在 Cloud KMS 中管理 Google SecOps 实例的加密密钥创建、轮替和撤消。
- 价值:通过保持对加密密钥的直接管理控制,满足严格的数据治理和主权要求。
主要术语
请查看本文档中使用的以下术语:
- 高级加密标准 (AES):一种对称块密码标准,使用 256 位密钥对存储的客户数据进行加密。
- 传输层安全协议 (TLS):一种加密协议,可保护通过网络传输的数据免遭拦截。
- 客户管理的加密密钥 (CMEK):您在 Cloud KMS 中创建、拥有和管理的加密密钥,用于保护 Google SecOps 实例中的静态数据。
准备工作
在为 Google SecOps 配置加密控制之前,请确认您满足以下前提条件:
- 权限:默认静态加密和传输中加密无需进行设置或使用其他 Identity and Access Management (IAM) 角色。如需配置 CMEK,您必须在创建实例期间向 Google SecOps 授予对 Cloud KMS 密钥的访问权限。如需了解详情,请参阅配置 CMEK。
- 环境检查:CMEK 可在所有受支持的 Google SecOps 区域中使用。如需查看支持的完整位置列表,请参阅 Google SecOps 服务位置。在
eu或us多区域中部署实例时,您必须分别在europe-west1或us-central1区域中配置额外的 CMEK。
限制
在规划加密策略时,请考虑以下功能边界:
- 实例创建要求:您只能在新 Google SecOps 实例上启用 CMEK。您无法在现有实例上启用 CMEK。
- SOAR 迁移依赖项:如果您的实例包含 SOAR,请确认您的 SOAR 实例已迁移到 Google.com,然后再轮换密钥。
静态加密
Google SecOps 默认会对静态客户数据进行加密。您无需采取任何其他行动。 Google Cloud 服务会在数据写入磁盘之前自动加密数据。
静态加密的主要特征包括:
- 加密算法:数据使用 256 位高级加密标准 (AES) 进行加密。例如,每个 Cloud Storage 对象的数据都会根据 AES 进行加密。
- 密钥管理:Google 拥有并管理默认静态加密中使用的密钥。每个加密密钥本身都采用一组定期轮替的主密钥进行加密。
如需了解详情,请参阅默认静态加密。
传输加密
传输到 Google SecOps 和在 Google SecOps 内传输的数据会经过加密,以防止被截获。
传输中加密的主要特征包括:
- 安全协议:传输中的数据使用标准安全套接字层 (SSL) 或传输层安全 (TLS) 协议进行加密。
如需了解详情,请参阅传输加密。
客户管理的加密密钥
如需更好地控制加密密钥,您可以使用客户管理的加密密钥 (CMEK)。CMEK 可用于 Google SecOps 实例,以满足特定的安全或合规性要求。
将 CMEK 与 Google SecOps 搭配使用时,请考虑以下事项:
- 创建新的 Google SecOps 实例时,您必须配置 CMEK。您无法在现有实例上启用 CMEK。
- 某些短暂的系统生成的临时文件在数据处理操作期间可能会短暂使用标准平台加密。
- 您负责管理 Cloud Key Management Service 中的密钥生命周期,包括轮替和停用。
如需了解如何为实例配置和管理 CMEK,请参阅配置 CMEK。
为新实例启用 CMEK
在启用新的 Google SecOps 实例时,请按照以下步骤配置 CMEK。
准备项目和加密密钥
如需准备 Google Cloud 环境并创建加密密钥,请完成以下步骤:
- 为 Google SecOps 配置 Google Cloud 项目,并接受配置邀请。
- 在您计划托管 Google SecOps 实例的区域中创建 Cloud KMS 密钥。
关联实例并分配密钥
如需关联实例并授予密钥访问权限,请完成以下步骤:
- 创建新的 Google SecOps 实例,然后选择您创建的 CMEK 密钥。
- 在创建实例期间,当系统提示时,向 Google SecOps 授予对 Cloud KMS 密钥的访问权限。
- 可选:为每个密钥配置密钥轮替时间表,以最大限度地减少潜在的密钥泄露带来的影响。
访问高级素材资源和参考文件
您可以使用本部分中的资源来强制执行组织范围的加密政策并管理密钥治理。
组织政策限制条件
您可以在组织、文件夹或项目级层应用以下限制条件,以在整个组织中强制执行 CMEK 使用:
constraints/gcp.restrictNonCmekServices:要求服务使用 CMEK。如果您向此限制添加 Google SecOps,管理员必须在创建实例期间选择 CMEK 密钥。constraints/gcp.restrictCmekCryptoKeyProjects:限制可为 Google SecOps 提供 CMEK 密钥的 Google Cloud 项目。
如需详细了解如何应用这些限制条件,请参阅了解层次结构评估和 CMEK 组织政策。
问题排查
本部分概述了关键生命周期时间表,并针对常见的加密和密钥管理问题提供了自助服务修复方案。
延迟和限制
在管理 CMEK 密钥时,请考虑以下操作时间表:
- 密钥轮替宽限期:轮替密钥后,请在轮替开始两周后,再停用或销毁之前的 CMEK 版本。
数据删除时间表:如果 Google SecOps 无法再访问某个密钥,则会在 30 天后删除相应数据。
服务恢复时间:恢复对已停用或无法访问的密钥的访问权限后,Google SecOps 会自动恢复对新数据的提取和处理,这最多可能需要两周时间才能完成。
错误修复
您可以使用下表来解决常见的 CMEK 配置和操作问题:
| 问题 | 说明 | 修复 |
|---|---|---|
| 实例配置被阻止 | 在强制执行 constraints/gcp.restrictNonCmekServices 但没有 CMEK 密钥时,预配失败。 |
在创建新实例期间选择有效的 Cloud KMS 密钥。如需了解详情,请参阅配置 CMEK。 |
| 数据注入和处理已停止 | Google SecOps 无法读取、写入或处理数据,因为有效的 CMEK 密钥已停用或无法访问。 | 在 30 天内重新启用 Cloud KMS 中的密钥版本或恢复外部密钥管理器 (EKM) 连接,以防止数据被删除。 |
| 密钥轮换数据丢失风险 | 在 SOAR 迁移之前停用或销毁旧版 CMEK 密钥会导致数据丢失且无法恢复。 | 在轮替密钥之前,请确认您的 SOAR 实例已迁移到 Google.com,并等待两周后再停用旧密钥版本。 |
验证和测试
监控您的 Google Cloud 日志,以检测变得不可用或未经授权的密钥,以便在数据被删除之前恢复访问权限。在轮换任何 CMEK 密钥之前,请按照检查迁移状态中的步骤验证 SOAR 迁移状态。