了解 Google Cloud 的双向 TLS

双向 TLS (mTLS) 是用于客户端和服务器之间相互身份验证的业界标准协议。mTLS 协议通过验证网络连接两端的客户端和服务器都拥有与客户端证书关联的私钥,确保其声明为自己所声称的身份。

什么是客户端证书?

客户端证书也称为传输层安全协议 (TLS) 证书,是一种包含用于验证设备身份的重要信息的文件。证书信息包括公钥、证书颁发者的声明(证书可以由证书授权机构颁发或自签名),以及证书的失效日期。

Google API 如何验证设备身份

TLS 协议使用一种称为公钥基础架构 (PKI) 的技术,该技术依赖于一对非对称密钥:公钥和私钥。使用私钥加密的任何内容都只能使用公钥解密。Google Cloud API 使用 TLS 协议来验证设备的身份,方法是在 mTLS 握手期间使用证书的公钥解密由私钥加密的消息。解密成功可证明拥有私钥,只有可信设备才能获取该私钥。

如需启用 mTLS 握手和验证流程,客户端必须执行以下操作:

  • 使用特定于 mTLS 的 API 端点与 Google API 建立 mTLS 连接。特定于 mTLS 的端点采用以下格式:[service].mtls.googleapis.com

  • 在 mTLS 握手期间发现并使用设备证书。如果您使用端点验证部署证书,受支持的客户端会自动发现并使用此类证书。

下图说明了客户端与 Google API 服务器之间的 mTLS 握手:

客户端与 Google API 服务器之间的 mTLS 握手

后续步骤