Media CDN 可为通过您自己的域名传送的 TLS 加密 (HTTPS) 流量提供一流的支持,还支持签名请求。Media CDN 通过您自己的网域(自带或 BYO 网域)提供服务,无需通过 Google 托管的网域提供服务。
- 提供 SSL (TLS) 流量或获取 Google 管理的证书不会产生额外费用:保护最终用户流量不应收取高价。
- Media CDN 支持 Google 管理的证书(允许 Google 管理轮替、密钥和向数千个边缘节点的安全分发)以及自行管理的(上传的)证书。
- 每项服务最多可支持 5 个 SSL 证书。
- 每个受管理的证书最多可以有 100 个名称(主题备用名称)。
我们建议您从专用主机名(子网域)提供 Edge Cache 服务,并为媒体网域使用单独的受管理证书,以确保安全性。
创建和颁发证书
如需验证、颁发受管理的 SSL (TLS) 证书并将其附加到 Media CDN 服务,请参阅配置 SSL 证书。
证书类型
Media CDN 支持两种类型的证书:
- 受管理的证书,Google 可以代表您为您的域名预配此类证书。您无需安全密钥,证书会自动续订。
- 自行管理的证书,您可以直接将其上传到 Certificate Manager。您有责任上传有效且公开受信任的证书,并在证书过期之前替换该证书。
由于可以在将流量定向到 Media CDN 之前授权和颁发受管理的证书,因此您可以在切换生产流量之前预配证书,从而避免停机。
在某些情况下,例如您需要在移动应用中进行密钥固定,或者需要支持具有过时信任库的旧版设备,您可能需要使用自行管理的证书。如果您有需要自行管理的证书的特定域名(主机),也可以在同一服务上同时使用由 Google 管理的证书和自行管理的证书。
授权证书颁发
借助 DNS 授权,即使在生产环境完全设置好之前,您也可以验证网域所有权并预配 Google 管理的证书。当您将证书迁移到 Google Cloud时,此操作特别有用。
Certificate Manager 通过 DNS 记录验证网域所有权。每个 DNS 授权都会存储有关 DNS 记录的信息,并涵盖单个网域及其通配符(例如,myorg.example.com 和 *.myorg.example.com)。通配符仅涵盖第一个子网域级别,而不涵盖更深的子网域级别。例如,*.myorg.example.com 不涵盖 sub.subdomain.myorg.example.com。
创建 Google 管理的证书时,您可以使用一个或多个 DNS 授权来预配和续订证书。如果您为单个网域提供了多个证书,则可以为所有证书使用相同的 DNS 授权。不过,您的 DNS 授权必须涵盖证书中列出的所有网域;否则,证书的创建和续订将会失败。
如需设置 DNS 授权,您必须在 DNS 配置中添加 CNAME 记录。您可以使用此记录来验证目标网域下的子网域。CNAME 记录指向 Certificate Manager 用于验证网域所有权的特殊 Google Cloud 网域。
创建 DNS 授权后,Certificate Manager 会返回此 CNAME 记录并验证您的所有权。
请注意,CNAME 记录还会授予 Certificate Manager 在您的Google Cloud 项目中为目标网域预配和续订证书的权限。如需撤消这些权限,请从 DNS 配置中移除 CNAME 记录。
每个项目的 DNS 授权
借助每个项目的 DNS 授权,您可以在每个 Google Cloud 项目中单独管理证书。借助每个项目的 DNS 授权,Certificate Manager 可以单独为每个项目签发和处理证书。项目内使用的 DNS 授权和证书是自成一体的,不会与其他项目的制品互动。
如需按项目启用 DNS 授权,请在创建 DNS 授权时选择 PER_PROJECT_RECORD 选项。然后,您将收到一条唯一的 CNAME 记录,其中包含子网域和特定于相应项目的目标。
您应将此 CNAME 记录添加到相关网域的 DNS 区域。
每个证书支持多个网域
通过 Certificate Manager 颁发的证书可让您在同一证书上将多个域名(主机名)指定为正文备用名称。
您可以在创建证书时指定网域列表,并提供所需的任何匹配授权,从而向证书添加多个网域。
每项授权仅涵盖确切的网域(例如 video.example.com)和通配符 (*.example.com),不涵盖任何明确的子网域。例如,如果您想为 eu.video.example.com 获取证书,则必须为 eu.video.example.com 网域设置另一项 DNS 授权。
以下示例展示了如何附加 video.example.com 和 eu.video.example.com 的授权:
gcloud
使用 gcloud certificate-manager certificates 命令:
gcloud certificate-manager certificates create video-example-com \
--domains="video.example.com,eu.video.example.com" \
--dns-authorizations="video-example-com-auth,eu-video-example-com-auth" \
--scope=EDGE_CACHE
这会创建一个证书,其中 DNS 授权处于 AUTHORIZING 状态,证书处于 PROVISIONING 状态:
managed: authorizationAttemptInfo: - domain: video.example.com state: AUTHORIZED dnsAuthorizations: - projects/123456/locations/global/dnsAuthorizations/video-example-com-auth - projects/123456/locations/global/dnsAuthorizations/eu-video-example-com-auth domains: - video.example.com state: PROVISIONING scope: EDGE_CACHE subjectAlternativeNames: - video.example.com
网域无法共用 DNS 授权。您必须指定多个网域和授权。Certificate Manager 会确定哪些网域需要哪些授权。
如需了解证书的签发和激活方式,请参阅配置 SSL (TLS) 证书。
证书续订
Certificate Manager 会自动续订受管理的证书。 系统会自动将续订的证书推送到 Google 的全球边缘网络,以用于您配置的每个有效服务。
EDGE_CACHE证书的有效期较短(30 天),与当前 90 天(续订间隔为 60 天)的业界标准相比,可提高安全性和合规性。- 证书续订通常在证书即将过期前 10 天启动。
- 证书续订时,您无需采取任何行动;新证书会在到期日期之前自动替换现有证书,对您的实时流量没有任何影响。
由于签发流水线会在续订之前重新验证网域控制权,因此请确保您不会删除为 DNS 授权配置的 DNS 记录。删除用于证明 DCV(网域控制权验证)的记录会导致无法续订证书,并阻止客户端在证书过期后通过 HTTPS (TLS) 进行连接。
CAA 记录和根
如需检查与客户端设备(包括旧款智能电视、智能手机和流媒体盒子)的兼容性,您可以访问 pki.goog,查看 Google 使用的完整根 CA 集。
如需允许 Certificate Manager 和 Media CDN 为具有现有 CAA 记录的网域颁发证书,请添加 pki.goog CAA 记录:
DOMAIN_NAME. CAA 0 issue "pki.goog"
没有现有 CAA 记录的网域无需添加此记录,但我们建议您添加,因为这是最佳实践。
详细了解 CAA 记录。
证书限制
每个项目最多可颁发 1,000 个受管理的证书和 1,000 个 DNS 授权。如需了解其他相关限制和配额,请参阅配额和限制文档。
支持的 TLS 版本
媒体 CDN 支持以下 TLS 版本:
| TLS 版本 | 支持 | 包含的加密算法 |
|---|---|---|
| SSL 3.0 | 否 | 不适用(不支持) |
| TLS 1.0 | 否 | 不适用(不支持) |
| TLS 1.1 | 否 | 不适用(不支持) |
| TLS 1.2 | ✔ | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、 TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256、 TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384、 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256、 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA、 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256、 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA、 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384、 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256、 TLS_RSA_WITH_3DES_EDE_CBC_SHA、 TLS_RSA_WITH_AES_128_CBC_SHA、 TLS_RSA_WITH_AES_128_GCM_SHA256、 TLS_RSA_WITH_AES_256_CBC_SHA、 TLS_RSA_WITH_AES_256_GCM_SHA384 |
| TLS 1.3 | ✔ | TLS_AES_128_GCM_SHA256、 TLS_AES_256_GCM_SHA384、 TLS_CHACHA20_POLY1305_SHA256 |
此外:
- 不支持新版 TLS(例如 TLS 1.3)的设备会自动协商受支持的 TLS 版本。
- TLS 1.2 是 Media CDN 支持的最低 TLS 版本。
- 媒体 CDN 不支持将 SSL 政策附加到服务。
排查证书颁发问题
如果您在证书颁发方面遇到任何错误,请参阅如何排查证书颁发问题。