Certificate Authority Service 概览

Certificate Authority Service (CA Service) 是一项伸缩能力极强的Google Cloud 服务,可帮助您简化和自动执行私有证书授权机构 (CA) 的部署、管理和安全维护。私有证书授权机构颁发数字证书,其中包括实体身份、颁发者身份和加密签名。私有证书是用于通过网络对用户、机器或服务进行身份验证的最常见方式之一。私有证书通常用于 DevOps 环境中,以保护容器、微服务、虚拟机和服务账号。

借助 CA Service,您可以执行以下操作:

  • 创建自定义根 CA 和从属 CA。
  • 定义 CA 的主题、密钥算法和位置。
  • 选择从属 CA 的区域,而无需考虑其根 CA 的区域。
  • 针对常见的证书颁发场景创建可重复使用的参数化模板。
  • 自带根 CA,并配置其他 CA 以链接到本地或其他 Google Cloud外部位置运行的现有根 CA。
  • 使用 Cloud HSM 存储您的私有证书授权机构 (CA) 密钥,Cloud HSM 已通过 FIPS 140-2 3 级认证,可在美洲、欧洲和亚太的多个区域中使用。
  • 借助 Cloud Audit Logs,可获取日志,清楚地了解谁在何时、何地执行过哪些操作。
  • 使用 Identity and Access Management (IAM) 定义精细的访问权限控制机制,并使用 VPC Service Controls 定义虚拟安全范围。
  • CA 服务支持每个 CA(DevOps 层级)每秒最多颁发 25 个证书,这意味着每个 CA 可以颁发数百万个证书,因此您可以放心地管理大量证书。您可以在一个称为 CA 池的颁发端点后面创建多个 CA,并将传入的证书请求分配给所有 CA。使用此功能,您每秒最多可有效签发 100 个证书。
  • 通过对您而言最方便的方式(使用 API、Google Cloud CLI、 Google Cloud 控制台或 Terraform)管理、自动执行和集成私有 CA。

证书使用场景

您可以使用私有 CA 为以下使用情形颁发证书:

  • 软件供应链完整性和代码身份:代码签名、制品身份验证和应用身份证书。
  • 用户身份:用作零信任网络、VPN、文档签名、电子邮件、智能卡等的用户身份的客户端身份验证证书。
  • IoT 和移动设备标识:用作设备标识和身份验证的客户端身份验证证书,例如无线访问。
  • 服务内身份:微服务使用的 mTLS 证书。
  • 持续集成和持续交付 (CI/CD) 渠道:在整个 CI/CD 构建过程中使用的代码签名证书,用于提高代码完整性和安全性。
  • Kubernetes 和 Istio:用于保护 Kubernetes 和 Istio 组件之间连接的证书。

为何选择专用 PKI

在典型的 Web 公钥基础架构 (PKI) 中,全球数百万客户信任一组独立的证书授权机构 (CA),以在证书中声明身份(例如域名)。作为其职责的一部分,CA 承诺仅在独立验证了证书中的身份后才颁发证书。例如,CA 通常需要先验证请求域名 example.com 的证书的人员是否实际控制该域名,然后才能向其颁发证书。由于这些 CA 可以为数百万客户颁发证书,而这些客户可能与 CA 没有直接关系,因此这些 CA 只能断言可公开验证的身份。这些 CA 仅限于某些明确定义的验证流程,这些流程在整个 Web PKI 中始终保持一致。

与 Web 公钥基础设施 (PKI) 不同,专用 公钥基础设施 (PKI) 通常涉及较小的 证书授权机构 (CA) 层次结构,该层次结构由组织直接管理。私有 PKI 仅向本身信任该组织具有适当控制措施的客户端(例如,该组织拥有的机器)发送证书。由于 CA 管理员通常有自己的方式来验证他们颁发证书的身份(例如,向自己的员工颁发证书),因此他们不受与 Web PKI 相同的要求限制。这种灵活性是专用 PKI 相对于 Web PKI 的主要优势之一。借助专用 PKI,您可以实现新的使用场景,例如使用短域名保护内部网站,而无需对这些名称拥有唯一所有权,或者将替代身份格式(例如 SPIFFE ID)编码到证书中。

此外,Web PKI 要求所有 CA 将其签发的每张证书记录到公开的证书透明度日志中,而向内部服务颁发证书的组织可能不需要这样做。借助私有 PKI,组织可以向外界隐藏其内部基础架构拓扑,例如网络服务或应用的名称。

后续步骤