为 CloudFront 分配租户申请证书 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

为 CloudFront 分配租户申请证书

创建分配租户时,该租户从多租户分配继承共享 Amazon Certificate Manager(ACM)证书。此共享证书为与多租户分配关联的所有租户提供 HTTPS。

在创建或更新 CloudFront 分配租户以添加域时,可以从 ACM 添加托管式 CloudFront 证书。然后,CloudFront 将代表您从 ACM 获得经 HTTP 验证的证书。可以将此租户级别 ACM 证书用于自定义域配置。CloudFront 简化了续订工作流程,有助于将证书保持为最新状态并确保内容交付不间断。

注意

您拥有证书,但它只能与 CloudFront 资源结合使用,并且无法导出私有密钥。

可以在创建或更新分配租户时申请证书。

添加域和证书(分配租户)

以下过程演示了如何为分配租户添加域和更新证书。

添加域和证书(分配租户)
  1. 登录 Amazon Web Services Management Console,并通过以下网址打开 CloudFront 控制台:https://console.amazonaws.cn/cloudfront/v4/home

  2. SaaS 下,选择分配租户

  3. 搜索分配租户。使用搜索栏中的下拉菜单,按域、名称、分配 ID、证书 ID、连接组 ID 或 Web ACL ID 进行筛选。

  4. 选择分配租户名称。

  5. 对于,选择管理域

  6. 对于证书,选择是否要为分配租户使用自定义 TLS 证书。该证书会验证您是否获得授权可使用该域名。该证书必须存在于美国东部(弗吉尼亚州北部)区域中。

  7. 对于,选择添加域并输入域名。最多可以为一个分配租户添加 5 个域。根据您的域,以下消息将出现在您输入的域名下方。

    • 证书涵盖此域。

    • 证书涵盖此域,等待验证。

    • 证书不涵盖此域。(这意味着您必须验证域所有权。)

  8. 选择更新分配租户

    在租户详细信息页面的之下,您可以看到以下字段:

    • 域所有权:域所有权的状态。在 CloudFront 可以提供内容之前,必须使用 TLS 证书验证来验证域所有权。

    • DNS 状态:域的 DNS 记录必须指向 CloudFront,才能正确地路由流量。

  9. 如果域所有权未得以验证,请在租户详细信息页面的之下,选择完成域设置,然后完成以下过程来将 DNS 记录指向您的 CloudFront 域名。

完成域设置

按照这些过程来验证您拥有分配租户的域。根据您的域,选择以下过程之一。

注意

如果域已使用 Amazon Route 53 别名记录指向 CloudFront,则必须在域名前面添加带有 _cf-challenge. 的 DNS TXT 记录。此 TXT 记录可验证域名是否已关联到 CloudFront。对每个域重复此步骤。下面显示了 TXT 记录示例:

  • 记录名称:_cf-challenge.example.com

  • 记录类型:TXT

  • 记录值:d111111abcdef8.cloudfront.net

您的记录将显示为:_cf-challenge.example.com TXT d111111abcdef8.cloudfront.net

I have existing traffic

如果域无法容忍停机时间,请选择此选项。您必须有权访问源/Web 服务器。使用以下过程验证域所有权。

当有现有流量时完成域设置
  1. 对于指定 Web 流量,选择我有现有流量,然后选择下一步

  2. 对于验证域所有权,请选择以下选项之一:

    • 使用现有证书:搜索现有 ACM 证书,或输入涵盖所列域的证书 ARN。

    • 手动上传文件:选择您是否拥有将文件上传到 Web 服务器的直接访问权限。

      对于每个域,创建一个纯文本文件(其中包含来自令牌位置的验证令牌),然后将其上传到位于现有服务器上指定文件路径处的源。此文件的路径可能如以下示例所示:/.well-known/pki-validation/acm_9c2a7b2ec0524d09fa6013efb73ad123.txt。完成该步骤后,ACM 会验证令牌,然后为该域颁发 TLS 证书。

    • HTTP 重定向:如果您不具有将文件上传到 Web 服务器的直接访问权限,或者您正在使用 CDN 或代理服务,请选择此选项。

      对于每个域,在现有服务器上创建 301 重定向。复制重定向自下的已知路径,并指向重定向至下的指定证书端点。重定向可能类似于以下示例:

      If the URL matches: example.com/.well-known/pki-validation/leabe938a4fe077b31e1ff62b781c123.txt Then the settings are:Forwarding URL Then 301 Permanent Redirect:To validation.us-east-1.acm-validations.aws/123456789012/.well-known/pki-validation/leabe938a4fe077b31e1ff62b781c123.txt
    注意

    可以选择检查证书状态来验证 ACM 何时为该域颁发证书。

  3. 选择下一步

  4. 完成将域指向 CloudFront 的步骤。

I don't have traffic

如果您要添加新域,请选择此选项。CloudFront 将为您管理证书验证。

在没有流量的情况下完成域设置
  1. 指定 Web 流量中,选择我还没有流量

  2. 对于每个域名,请完成将域指向 CloudFront 的步骤。

  3. 在更新每个域名的 DNS 记录后,选择下一步

  4. 等待颁发证书。

    注意

    可以选择检查证书状态来验证 ACM 何时为该域颁发证书。

  5. 选择提交

将域指向 CloudFront

更新您的 DNS 记录,以便将来自每个域的流量路由到 CloudFront 路由端点。您可以有多个域名,但它们必须解析到此端点。

将域指向 CloudFront
  1. 复制 CloudFront 路由端点值,例如 d111111abcdef8.cloudfront.net。

  2. 更新您的 DNS 记录,以便将来自每个域的流量路由到 CloudFront 路由端点。

    1. 登录到域注册商或 DNS 提供商管理控制台。

    2. 导航到域的 DNS 管理部分。

      • 对于子域:创建 CNAME 记录。例如:

        • 名称:子域(例如 wwwapp

        • 值/目标:CloudFront 路由端点

        • 记录类型:CNAME

        • TTL:3600(或任何适合用例的值)

      • 对于顶级域/根域:创建 ALIAS 记录(Route 53)或 DNS 提供商提供的支持顶级域重定向的类似功能。例如,在 Route 53 中:

        • 名称:顶级域(例如 example.com

        • 记录类型:A

        • 别名:是

        • 别名目标:CloudFront 路由端点

        • 路由策略:简单(或任何适合用例的策略)

    3. 验证 DNS 更改是否已传播。(这可能需要 24-48 小时。) 使用 dignslookup 之类的工具。

      dig www.example.com # Should eventually return a CNAME pointing to your CloudFront routing endpoint
  3. 返回 CloudFront 控制台并选择提交。这将返回到分配租户页面。当域处于活动状态时,CloudFront 会更新域状态,以表明域已准备好提供流量。

域注意事项(分配租户)

当域处于活动状态时,域控制已建立,CloudFront 将响应查看器对该域的所有请求。一旦激活,域就无法停用或更改为非活动状态。当域已在使用中时,该域无法与其它 CloudFront 资源关联。要将该域与其它分配相关联,请使用 UpdateDomainAssociation 请求将该域从一个 CloudFront 资源移到另一个 CloudFront 资源。

当域处于非活动状态时,CloudFront 将不会响应查看器对该域的请求。当域处于非活动状态时,请注意以下情况:

  • 如果您有待处理的证书请求,CloudFront 将响应对已知路径的请求。当请求处于待处理状态时,域无法与任何其它 CloudFront 资源关联。

  • 如果您没有待处理的证书请求,CloudFront 将不会响应对该域的请求。可以将该域与其它 CloudFront 资源相关联。

  • 对于每个分配租户,您只能有一个待处理的证书请求。您必须先取消现有待处理的请求,然后才能为其它域请求另一个证书。取消现有证书请求不会删除关联的 ACM 证书。可以使用 ACM API 将其删除。

  • 如果您将新证书应用于分配租户,这将取消与先前证书的关联。可以重用该证书来涵盖其它分配租户的域。

与续订经 DNS 验证的证书一样,当证书续订成功时,您会收到通知。然而,您不需要做任何其它事情。CloudFront 将自动管理域的证书续订。

注意

您无需调用 ACM API 操作,即可创建或更新证书资源。您可以通过使用 CreateDistributionTenantUpdateDistributionTenant API 操作来管理证书,以便为托管式证书请求指定详细信息。