在 CloudFront 中使用 SSL/TLS 证书的要求
本主题中介绍了 SSL/TLS 证书的要求。除非另有说明,否则这些要求均适用于以下两项:
-
在查看器和 CloudFront 之间使用 HTTPS 的证书
-
在 CloudFront 和您的源之间使用 HTTPS 的证书
主题
证书颁发者
建议您使用由 Amazon Certificate Manager(ACM)us-east-1
) 中请求(或导入)该证书。
CloudFront 与 Mozilla 支持相同的证书颁发机构 (CA),因此如果您不使用 ACM,请使用 Mozilla 包含的 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)
有关 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 证书的公用名字段中包含域名,使用者备用名称字段中可能包含更多域名。(CloudFront 支持证书域名中的通配符。)
证书中的其中一个域名必须与您为“源域名”指定的域名匹配。如果没有任何域名匹配,CloudFront 会向查看器返回 HTTP 状态代码 502 (Bad Gateway)
。
重要
在将备用域名添加到分配时,CloudFront 会检查备用域名是否涵盖在您附加的证书中。证书必须在证书的使用者备用名称 (SAN) 字段中覆盖备用域名。这意味着,SAN 字段必须包含备用域名的完全匹配项,或者包含与要添加的备用域名级别相同的通配符。
有关更多信息,请参阅 使用备用域名的要求。
最低 SSL/TLS 协议版本
如果您使用的是专用 IP 地址,请通过选择安全策略来为查看器和 CloudFront 之间的连接选择最低 SSL/TLS 协议版本。
有关更多信息,请参阅 安全策略(最低 SSL/TLS 版本)主题中的 分配设置参考。
支持的 HTTP 版本
如果您将一个证书与多个 CloudFront 分配关联,则与证书关联的所有分配都必须针对支持的 HTTP 版本使用相同的选项。您在创建或更新 CloudFront 分配时指定此选项。