Secret Manager 概览

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

密文是一种全局资源,包含一系列元数据和密文版本。元数据可以包括复制位置、标签、注释和权限。

密文版本会存储实际的密文数据,例如 API 密钥、密码或证书。每个版本都由唯一的 ID 或时间戳标识。版本可提供审计跟踪 让您可以跟踪 Secret 随时间的变化情况。

使用 Secret Manager,您可以执行以下操作:

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

  • 加密传输中的机密数据以及静态的 Secret 数据:所有 Secret 默认加密,无论是在传输过程中使用 TLS 加密,还是使用 AES-256 位加密静态加密 键。对于需要更精细控制的对象,您可以加密 Secret 数据 利用由客户管理 加密密钥 (CMEK)。您可以使用 CMEK 生成新的加密密钥或导入现有加密密钥,以满足您的具体要求。

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

  • 自动轮替 Secret 以满足您的安全和合规性要求轮替 Secret 防范未经授权的访问和数据泄露。定期更改 Secret 可降低 Secret 过时或被遗忘的风险,并确保遵守许多要求定期轮替敏感凭据的法规框架。

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

  • Secret 管理和密钥管理之间的区别

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

    您可以通过下表了解 Secret Manager 与密钥管理系统(例如 Cloud Key Management Service [Cloud KMS])之间的主要区别。

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

    密文加密

    Secret Manager 始终会在 Secret 数据持久保存之前对其进行加密 复制到磁盘如需详细了解 Google Cloud 加密选项,请参阅静态加密

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

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

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

    后续步骤