Secret Manager 概览

Secret Manager 是一项密钥和凭据管理服务,可让您存储和管理 API 密钥、用户名、密码、证书等敏感数据。

本文档介绍了默认的全球服务,该服务可让您在任何 Cloud de Confiance by S3NS 区域存储和访问密钥。 如需了解区域服务,请参阅区域服务文档。如果您不确定需要哪种服务,请参阅全球和区域服务选项。

主要概念

Secret是一种全球性资源,包含一系列元数据和 Secret 版本。元数据可以包括标签、注释和权限。

Secret 版本用于存储实际的 Secret 数据,例如 API 密钥、密码或证书。每个版本都由唯一的 ID 或时间戳标识。

借助 Secret Manager,您可以执行以下操作:

  • 使用版本管理回滚、恢复和审核:版本可帮助您管理逐步发布和紧急回滚。如果密钥意外更改或泄露,您可以恢复到之前已知良好的版本。这样可以最大限度地减少潜在的停机时间和安全漏洞。版本控制功能可维护对密钥所做更改的历史记录,包括更改者和更改时间。它有助于您审核 Secret 数据并跟踪任何未经授权的访问尝试。您可以将 Secret 版本固定到特定工作负载,并添加别名,以便更轻松地访问 Secret 数据。您还可以停用或销毁不需要的密文版本。

  • 加密传输中和静态的 Secret 数据:默认情况下,所有 Secret 都会加密,在传输过程中使用 TLS 加密,静态时使用 AES-256 位加密密钥加密。对于需要更精细控制的用户,您可以使用客户管理的加密密钥 (CMEK) 加密您的 Secret 数据。借助 CMEK,您可以生成新的加密密钥或导入现有加密密钥,以满足您的特定要求。

  • 使用精细的 Identity and Access Management (IAM) 角色和条件管理对 Secret 的访问权限: 借助 IAM 角色和权限,您可以提供对特定 Secret Manager 资源的精细访问权限。您可以分离访问、管理、审核和轮替 Secret 的职责。

  • 通过密钥复制确保高可用性和灾难恢复:您可以跨多个区域复制密钥,以确保应用的高可用性和灾难恢复,无论应用位于哪个地理位置。您可以选择以下复制政策:

    • 自动复制: Cloud de Confiance by S3NS 会考虑可用性和延迟时间来决定区域。您只需为一个位置付费。

    • 用户管理的复制:您可以根据自己的需求选择一组自定义区域。您需要按位置付费。

  • 自动轮换密钥,以满足您的安全和合规性要求: 轮换密钥有助于防范未经授权的访问和数据泄露。定期更改 Secret 可降低 Secret 过时或被遗忘的风险,并确保符合许多监管框架的要求,这些框架要求定期轮替敏感凭据。

  • 使用区域密钥强制执行数据驻留: 数据驻留要求某些类型的数据(通常属于特定个人或组织)存储在指定的地理位置。您可以创建区域 Secret,并将敏感数据存储在特定位置,以遵守数据主权法律法规。

密文管理和密钥管理之间的区别

密文管理和密钥管理都是数据安全的关键组成部分,但它们服务于不同的目的,并处理不同类型的敏感信息。 选择密文管理还是密钥管理取决于您的具体需求。如果您想安全地存储和管理机密数据,密钥管理系统是合适的工具。如果您想管理加密密钥并执行加密操作,密钥管理系统是更好的选择。

您可以参考下表,了解 Secret Manager 与 Cloud Key Management Service(Cloud KMS) 等密钥管理系统之间的主要区别。

功能 Secret Manager Cloud KMS
主要功能 将 Secret 作为二进制 blob 或文本字符串进行存储、管理和访问。 管理加密密钥,并使用它们加密或解密数据。
存储的数据 实际密钥值。如果您拥有适当的权限,则可以查看 Secret 的内容。 加密密钥。您无法查看、提取或导出用于加密和解密操作的实际加密 Secret(位和字节)。
加密 使用 Google Cloud-powered keys 或客户管理的密钥加密静态密钥和传输中的密钥。 为其他服务提供加密和解密功能。
典型使用场景 存储应用在运行时所需的数据库密码、API 密钥或 TLS 证书等配置信息。 处理大型加密工作负载,例如加密数据库中的行或加密图片和文件等二进制数据。您还可以使用 Cloud KMS 执行其他加密操作,例如签名和验证。

密文加密

Secret Manager 始终会在将 Secret 数据持久存储到磁盘之前对其进行加密。如需详细了解 Cloud de Confiance by S3NS 加密选项,请参阅静态加密。

Secret Manager 使用我们为自身的加密数据所使用的同一强化密钥管理系统(包含严格的密钥访问控制和审核)来替您管理服务器端的加密密钥。Secret Manager 使用 AES-256 对静态用户数据进行加密。您无需进行设置或配置,也无需修改服务的访问方式,并且不会造成明显的性能影响。当已获授权的用户访问您的密文数据时,系统会自动以透明方式解密该数据。

Secret Manager API 始终通过安全的 HTTP(S) 连接进行通信。

如果需要额外的保护层,用户可以启用 CMEK,并使用存储在 Cloud Key Management Service 中的自有加密密钥来保护存储在 Secret Manager 中的 Secret。如需详细了解如何配置和使用客户管理的加密密钥,请参阅 CMEK 文档。

后续步骤