Certificate Authority Service 的最佳实践

本页面概述了一些可帮助您更高效地使用 Certificate Authority Service 的最佳实践。

角色和访问权限控制

您可以使用 Identity and Access Management (IAM) 向用户授予角色。角色包含一个或多个权限。IAM 中的角色可以是基本角色、预定义角色或自定义角色。

IAM 角色类型 说明
基本 包括在引入 IAM 之前已存在的 Owner、Editor 和 Viewer 角色。
预定义 预定义角色由 Google 创建和维护。
自定义 自定义角色是用户定义的,可让您捆绑一项或多项受支持的权限,以满足您的特定需求。如需了解详情,请参阅了解自定义角色

在任何时候,都不应为个人分配多个角色。此外,每个担任指定角色的每个人都应接受适当的简报和培训,了解各自的责任和安全实践。如果您想为单个用户分配各种权限,我们建议您使用 IAM 创建自定义角色。如需了解如何创建自定义角色,请参阅创建和管理自定义角色

如需了解权限和预定义的 IAM 角色,请参阅 使用 IAM 进行访问权限控制

CA Service 层级

层级是为证书授权机构 (CA) 池设置的。CA 池中的所有 CA 均分配同一层级。CA Service 为 CA 池提供两个操作服务层级:DevOps 和 Enterprise。这两个层级可让组织根据运营要求平衡性能和生命周期管理功能。

  • 我们建议您仔细考虑使用 DevOps 层级,因为它不支持证书吊销。
  • 对于 DevOps 层级中的 CA,系统不会存储已颁发的证书。您只能通过查看 Cloud Audit Logs(如果已启用)来跟踪证书。我们建议您仅对不需要撤消的短期有效的证书使用 DevOps 层级,例如用于微服务、容器、会话证书、非永久性虚拟机和其他隔离需求的证书。
  • 公钥基础架构 (PKI) 可以由 DevOps 和 Enterprise 层级中的 CA 组合组成,以满足各种需求。
  • 在大多数情况下,我们建议您使用 Enterprise 层级创建向其他 CA 和最终实体颁发证书的 CA 池。

如需详细了解 CA Service 层级,请参阅选择操作层级

如需了解如何启用 Cloud Audit Logs,请参阅配置数据访问审核日志

CA 签名密钥

对 CA 证书的底层加密密钥对的适当控制决定了 PKI 提供的安全性和完整性。本部分列出了保护 CA 签名密钥的一些最佳实践。

硬件安全模块 (HSM)

您可以将 CA Service 配置为使用 Google 拥有和由 Google 管理的密钥,这些密钥使用 用于生成、存储和使用密钥的 Cloud HSM。但是,如果您希望 使用现有的 Cloud KMS 密钥,则可以在设置 Cloud KMS 密钥期间使用该密钥, 与 CA 通信。

如需详细了解 Cloud HSM,请参阅 Cloud HSM

如需详细了解如何将加密密钥导入 Cloud HSM 或 Cloud KMS,请参阅将密钥导入 Cloud KMS

Google 管理的密钥与客户管理的密钥

如果您没有满足 直接在 CA Service 之外管理密钥,我们建议 您使用 Google 拥有的密钥和 Google 管理的密钥。Google 拥有的密钥和 Google 管理的密钥提供了一种简单且 安全的密钥生成、存储和利用系统。

Google 拥有的密钥和 Google 管理的密钥使用 Cloud HSM,任何一方均无法访问或使用 其他组织。Cloud HSM 签名密钥的访问和使用可审核 Cloud Audit Logs 的时间

如需详细了解生命周期管理模型,请参阅管理资源

导入外部 CA

您无法将之前颁发的证书导入 CA Service。我们建议您不要将已颁发证书的现有外部 CA 导入 CA Service。

代管

CA Service 使用 Cloud KMS 和 Cloud HSM 保护密钥免遭导出和提取。如果您的组织想要保留其 CA 密钥的副本,您可以使用本地工具生成密钥。如需将这些密钥与 CA Service 搭配使用,请将密钥导入到 Cloud KMS 和 Cloud HSM。然后,您可以安全地托管钥匙,并保管好钥匙,直到日后需要。

如需了解如何将密钥导入 Cloud KMS,请参阅将密钥导入 Cloud KMS

CA 密钥大小和算法

加密密钥大小和算法定义用于签署证书和证书吊销列表 (CRL) 的非对称密钥对的类型和强度。CA 的存在时间可能会相对较长。因此,密钥必须足够安全,在 CA 的预期生命周期内获得安全保护。

如果您拥有使用新型设备且明确定义的 PKI 环境,椭圆曲线数字签名算法 (ECDSA) 可提供最佳的性能和安全性。在具有多种系统且对密钥支持不确定的组织中,使用基于 RSA 的密钥可能就足够了。

关于 CA 签名密钥,还有其他注意事项,例如认证合规性、与其他系统的兼容性以及特定威胁模型。在选择密钥大小和算法时,请考虑您的用例。

无论 CA 的生命周期如何,也无论密钥大小和算法如何,我们都建议您设置一个用于定期轮替 CA 密钥的过程。

如需详细了解如何选择签名密钥的算法,请参阅 选择密钥算法

后续步骤