在 CloudFront 中使用 SSL/TLS 证书的要求 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 CloudFront 中使用 SSL/TLS 证书的要求

本主题中介绍了 SSL/TLS 证书的要求。除非另有说明,否则这些要求均适用于以下两项:

  • 在查看器和 CloudFront 之间使用 HTTPS 的证书

  • 在 CloudFront 和您的源之间使用 HTTPS 的证书

证书颁发者

建议您使用 Amazon Certificate Manager(ACM) 颁发的证书。有关从 ACM 获取证书的信息,请参阅《Amazon Certificate Manager 用户指南》。要在 CloudFront 中使用 ACM 证书,请确保您在美国东部(弗吉尼亚州北部)区域 (us-east-1) 中请求(或导入)该证书。

CloudFront 与 Mozilla 支持相同的证书颁发机构 (CA),因此如果您不使用 ACM,请使用 Mozilla 包含的 CA 证书列表中的 CA 颁发的证书。有关获取和安装证书的更多信息,请参考 HTTP 服务器软件文档和 CA 文档。

用于 Amazon Certificate Manager 的 Amazon Web Services 区域

要在 Amazon Certificate Manager (ACM) 中使用证书以要求在查看器和 CloudFront 之间使用 HTTPS,请确保您在美国东部(弗吉尼亚州北部)区域 (us-east-1) 中请求(或导入)该证书。

如果您需要在 CloudFront 和您的源之间使用 HTTPS,并且正在 Elastic Load Balancing 中使用负载均衡器作为源,则您可以在任何 Amazon Web Services 区域中请求或导入证书。

证书格式

证书必须采用 X.509 PEM 格式。这是您使用 Amazon Certificate Manager 时的原定设置格式。

中间证书

如果您使用的是第三方证书颁发机构 (CA),请在 .pem 文件的证书链中列出所有中间证书,从为您的域签署证书的 CA 所颁发的证书开始。通常,您将在以适当的链顺序列出中间证书和根证书的 CA 网站上找到文件。

重要

请不要包括以下内容:根证书,未在信任路径中的中间证书,或者 CA 的公有密钥证书。

示例如下:

-----BEGIN CERTIFICATE----- Intermediate certificate 2 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- Intermediate certificate 1 -----END CERTIFICATE-----

密钥类型

CloudFront 支持 RSA 和 ECDSA 公有/私有密钥对。

CloudFront 支持使用 RSA 和 ECDSA 证书连接到查看器和源的 HTTPS 连接。借助 Amazon Certificate Manager(ACM),您可以请求和导入 RSA 或 ECDSA 证书,然后将它们与您的 CloudFront 分配相关联。

有关 CloudFront 支持的您可以在 HTTPS 连接中协商的 RSA 和 ECDSA 密码的列表,请参阅查看器和 CloudFront 之间支持的协议和密码CloudFront 与源之间受支持的协议和密码

私有密钥

如果您使用的是来自第三方证书颁发机构 (CA) 的证书,请注意以下几点:

  • 私有密钥必须匹配证书中的公有密钥。

  • 私有密钥必须采用 PEM 格式。

  • 私有密钥无法使用密码加密。

如果 Amazon Certificate Manager (ACM) 提供了证书,则 ACM 不会发布该私有密钥。私有密钥存储在 ACM 中,供与 ACM 集成的 Amazon 服务使用。

权限

您必须具备使用和导入 SSL/TLS 证书的权限。如果您使用 Amazon Certificate Manager (ACM),建议您使用 Amazon Identity and Access Management 权限以限制访问证书。有关更多信息,请参阅《Amazon Certificate Manager 用户指南》中的身份和访问权限管理

证书密钥大小

CloudFront 支持的证书密钥大小取决于密钥和证书类型。

对于 RSA 证书:

CloudFront 支持 1024 位、2048 位、3072 位和 4096 位 RSA 密钥。用于 CloudFront 的 RSA 证书的最大密钥长度为 4096 位。

请注意,ACM 颁发密钥最多为 2048 位的 RSA 证书。要使用 3072 位或 4096 位 RSA 证书,您需要从外部获取证书并将其导入 ACM,之后即可将其与 CloudFront 一起使用。

有关如何确定 RSA 密钥大小的信息,请参阅确定 SSL/TLS RSA 证书中公有密钥的大小

对于 ECDSA 证书:

CloudFront 支持 256 位密钥。要在 ACM 中使用 ECDSA 证书以要求在查看器和 CloudFront 之间使用 HTTPS,请使用 prime256v1 椭圆曲线。

支持的证书类型

CloudFront 支持可信的证书颁发机构颁发的所有类型的证书。

证书到期日期和续订

如果您使用来自第三方证书颁发机构 (CA) 的证书,则您必须监控证书到期日期并在到期前续订导入到 Amazon Certificate Manager (ACM) 或上载到 Amazon Identity and Access Management 证书存储的证书。

如果您使用的是 ACM 提供的证书,则 ACM 会为您管理证书续订。有关更多信息,请参阅《Amazon Certificate Manager 用户指南》中的托管续订

CloudFront 分配和证书中的域名

当您使用自定义源时,源上 SSL/TLS 证书的 Common Name (公用名) 字段中包含域名,Subject Alternative Names (使用者备用名称) 字段中可能包含更多域名。(CloudFront 支持证书域名中的通配符。)

证书中的其中一个域名必须与您为“源域名”指定的域名匹配。如果没有任何域名匹配,CloudFront 会向查看器返回 HTTP 状态代码 502 (Bad Gateway)

重要

在将备用域名添加到分配时,CloudFront 会检查备用域名是否涵盖在您附加的证书中。证书必须在证书的使用者备用名称 (SAN) 字段中覆盖备用域名。这意味着,SAN 字段必须包含备用域名的完全匹配项,或者包含与要添加的备用域名级别相同的通配符。

有关更多信息,请参阅使用备用域名的要求

最低 SSL/TLS 协议版本

如果您使用的是专用 IP 地址,请通过选择安全策略来为查看器和 CloudFront 之间的连接选择最低 SSL/TLS 协议版本。

有关更多信息,请参阅 安全策略主题中的 您创建或更新分配时指定的值

支持的 HTTP 版本

如果您将一个证书与多个 CloudFront 分配关联,则与证书关联的所有分配都必须针对支持的 HTTP 版本使用相同的选项。您在创建或更新 CloudFront 分配时指定此选项。