

# 分配设置
<a name="DownloadDistValuesGeneral"></a>

以下值适用于整个分配。

**Topics**
+ [

## 价格级别
](#DownloadDistValuesPriceClass)
+ [

## AWS WAF Web ACL
](#DownloadDistValuesWAFWebACL)
+ [

## 备用域名 (CNAME)
](#DownloadDistValuesCNAME)
+ [

## SSL 证书
](#DownloadDistValuesSSLCertificate)
+ [

## 自定义 SSL 客户端支持
](#DownloadDistValuesClientsSupported)
+ [

## 安全策略（最低 SSL/TLS 版本）
](#DownloadDistValues-security-policy)
+ [

## 支持的 HTTP 版本
](#DownloadDistValuesSupportedHTTPVersions)
+ [

## 默认根对象
](#DownloadDistValuesDefaultRootObject)
+ [

## 标准日志记录
](#DownloadDistValuesLoggingOnOff)
+ [

## 连接日志
](#DownloadDistValuesConnectionLogs)
+ [

## 日志前缀
](#DownloadDistValuesLogPrefix)
+ [

## Cookie 日志记录
](#DownloadDistValuesCookieLogging)
+ [

## 启用 IPv6（查看器请求）
](#DownloadDistValuesEnableIPv6)
+ [

## 双向身份验证
](#DownloadDistValuesMutualAuthentication)
+ [

## 为自定义源启用 IPv6（源请求）
](#DownloadDistValuesEnableIPv6-origin)
+ [

## 注释
](#DownloadDistValuesComment)
+ [

## 分配状态
](#DownloadDistValuesEnabled)

## 价格级别
<a name="DownloadDistValuesPriceClass"></a>

选择与您想为 CloudFront 服务支付的最高价对应的价格级别。默认情况下，CloudFront 从所有 CloudFront 区域的边缘站点提供您的对象。

有关价格级别以及您选择的价格级别如何影响分配的 CloudFront 性能的更多信息，请参阅 [CloudFront 定价](https://aws.amazon.com/cloudfront/pricing/)。

## AWS WAF Web ACL
<a name="DownloadDistValuesWAFWebACL"></a>

您可以使用 [AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf) 来保护您的 CloudFront 分配，这是一个 Web 应用程序防火墙，可让您保护您的 Web 应用程序和 API，以在请求到达服务器之前阻止请求。您可以在创建或编辑 CloudFront 分配时[为分配启用 AWS WAF](WAF-one-click.md)。

或者，您可以稍后在 AWS WAF 控制台（[https://console.aws.amazon.com/wafv2/](https://console.aws.amazon.com/wafv2/)）中为特定于您的应用程序的其他威胁配置额外的安全保护。

有关 AWS WAF 的更多信息，请参阅《AWS WAF 开发人员指南》[https://docs.aws.amazon.com/waf/latest/developerguide/](https://docs.aws.amazon.com/waf/latest/developerguide/)。

## 备用域名 (CNAME)
<a name="DownloadDistValuesCNAME"></a>

可选。指定您想用于对象 URL 的一个或多个域名，代替您创建分配时 CloudFront 指派的域名。您必须拥有该域名，或有权使用它，您可以通过添加 SSL/TLS 证书来验证这一点。

 例如，如果您希望对象的 URL：

`/images/image.jpg`

像这样：

`https://www.example.com/images/image.jpg`

而不是这样：

`https://d111111abcdef8.cloudfront.net/images/image.jpg`

为 `www.example.com` 添加 CNAME。

**重要**  
如果将 `www.example.com` 的 CNAME 添加到您的分配中，还必须执行以下操作：  
创建（或更新）一条 CNAME 记录，让您的 DNS 服务将对 `www.example.com` 的查询路由到 `d111111abcdef8.cloudfront.net`。
将来自可信证书颁发机构 (CA) 的一个证书添加到 CloudFront，该证书中涵盖您添加到分配中的域名 (CNAME)，以来验证您是否被授权使用该域名。
您必须具有权限才能创建 CNAME 记录，并指定域的 DNS 服务提供商。通常，这意味着您拥有该域，或者您正在为域所有者开发应用程序。

有关您可以添加到分配的当前最大备用域名数，或者要请求提高配额（以前称为限制），请参阅[分配的一般配额](cloudfront-limits.md#limits-web-distributions)。

更多有关备用域名的信息，请参阅 [通过添加备用域名（CNAME）使用自定义 URL](CNAMEs.md)。有关 CloudFront URL 的更多信息，请参阅[在 CloudFront 中自定义文件的 URL 格式](LinkFormat.md)。

## SSL 证书
<a name="DownloadDistValuesSSLCertificate"></a>

如果指定一个备用域名来与您的分配结合使用，请选择**自定义 SSL 证书**，然后，要想验证您是否获得授权使用该备用域名，请选择一个涵盖它的证书。如果您希望查看器使用 HTTPS 访问您的对象，请选择支持此操作的设置。
+ **默认 CloudFront 证书 (\$1.cloudfront.net)** – 如果要在您的对象的 URL 中使用 CloudFront 域名，如 `https://d111111abcdef8.cloudfront.net/image1.jpg`，请选择该选项。
+ **自定义 SSL 证书** – 如果要将对象的 URL 中的您自己的域名作为备用域名，例如 `https://example.com/image1.jpg`，则选择该选项。然后，选择一个涵盖该备用域名的证书。证书列表中可以包括以下任一证书：
  +  提供的证书AWS Certificate Manager
  + 您从第三方证书颁发机构购买并上传到 ACM 的证书
  + 您从第三方证书颁发机构购买并上传到 IAM 证书存储的证书

  如果选择此设置，则建议您只在对象 URL 中使用一个备用域名 (https://example.com/logo.jpg)。如果您使用 CloudFront 分配域名 (https://d111111abcdef8.cloudfront.net/logo.jpg)，而客户端使用较旧的不支持 SNI 得查看器，则查看器得响应取决于您为**支持的客户端**选择的值：
  + **所有客户端**：当 CloudFront 域名与 SSL/TLS 证书中的域名不匹配时，查看器将显示警告。
  + **仅支持服务器名称指示 (SNI) 的客户端**：CloudFront 将删除与查看器的连接而不返回对象。

## 自定义 SSL 客户端支持
<a name="DownloadDistValuesClientsSupported"></a>

仅在您为 **SSL 证书**选择**自定义 SSL 证书（example.com）**时才适用。如果为分配指定了一个或多个备用域名和自定义 SSL 证书，请选择您希望 CloudFront 如何处理 HTTPS 请求：
+ **支持服务器名称指示 (SNI) 的客户端 - (推荐)** – 使用此设置，几乎所有新式 Web 浏览器和客户端都可以连接到分配，因为它们支持 SNI。但是，某些查看器可能会使用较旧的 Web 浏览器或不支持 SNI 的客户端，这意味着他们无法连接到分配。

  要使用 CloudFront API 应用此设置，请在 `sni-only` 字段中指定 `SSLSupportMethod`。在 CloudFormation 中，此字段命名为 `SslSupportMethod`（注意不同的大写）。
+ **旧版客户端支持** – 使用此设置，旧版 Web 浏览器和不支持 SNI 的客户端可以连接到分配。但是，此设置会产生额外的月度费用。有关确切的价格，请转到 [Amazon CloudFront 定价](https://aws.amazon.com/cloudfront/pricing/)页面，然后在此页中搜索**专用 IP 自定义 SSL**。

  要使用 CloudFront API 应用此设置，请在 `vip` 字段中指定 `SSLSupportMethod`。在 CloudFormation 中，此字段命名为 `SslSupportMethod`（注意不同的大写）。

有关更多信息，请参阅 [选择 CloudFront 如何处理 HTTPS 请求](cnames-https-dedicated-ip-or-sni.md)。

## 安全策略（最低 SSL/TLS 版本）
<a name="DownloadDistValues-security-policy"></a>

指定希望 CloudFront 用于与查看器（客户端）建立 HTTPS 连接的安全策略。安全策略确定两个设置：
+ CloudFront 与查看器通信时使用的最低 SSL/TLS 协议。
+ CloudFront 可用来加密其返回给查看器的内容的密码

有关安全策略（包括每个策略包含的协议和密码）的更多信息，请参阅[查看器和 CloudFront 之间支持的协议和密码](secure-connections-supported-viewer-protocols-ciphers.md)。

可用的安全策略取决于您为**SSL 证书**和**自定义 SSL 客户端支持**指定的值（称为 CloudFront API 中的 `CloudFrontDefaultCertificate` 和 `SSLSupportMethod`）：
+ 在 **SSL 证书**是**默认 CloudFront 证书 (\$1.cloudfront.net)** 时（当 API 中 `CloudFrontDefaultCertificate` 是 `true` 时），CloudFront 将安全策略自动设置为 TLSv1。
+ 当 **SSL 证书**是**自定义 SSL 证书（example.com）***并且***自定义 SSL 客户端支持**是**支持服务器名称指示（SNI）的客户端 -（推荐）**时（在 API 中 `CloudFrontDefaultCertificate` 是 `false` *并且* `SSLSupportMethod` 是 `sni-only` 时），您可以从以下安全策略中进行选择：
  + TLSv1.3\$12025
  + TLSv1.2\$12025
  + TLSv1.2\$12021
  + TLSv1.2\$12019
  + TLSv1.2\$12018
  + TLSv1.1\$12016
  + TLSv1\$12016
  + TLSv1
+ 当 **SSL 证书**是**自定义 SSL 证书（example.com）***并且***自定义 SSL 客户端支持**是**旧版客户端支持**时（在 API 中 `CloudFrontDefaultCertificate` 是 `false` *并且* `SSLSupportMethod` 是 `vip` 时），您可以从以下安全策略中进行选择：
  + TLSv1
  + SSLv3

  在此配置中，TLSv1.3\$12025、TLSv1.2\$12025、TLSv1.2\$12021、TLSv1.2\$12019、TLSv1.2\$12018、TLSv1.1\$12016 和 TLSv1\$12016 安全策略在 CloudFront 控制台或 API 中不可用。如果要使用这些安全策略之一，您可以选择以下选项：
  + 评估您的分配是否需要具有专用 IP 地址的旧版客户端支持。如果查看器支持[服务器名称指示（SNI）](https://en.wikipedia.org/wiki/Server_Name_Indication)，建议您将分配的**自定义 SSL 客户端支持**设置更新为**支持服务器名称指示（SNI）的客户端**（在 API 中将 `SSLSupportMethod` 设置为 `sni-only`）。这使您能够使用任何可用的 TLS 安全策略，并且还可以降低您的 CloudFront 费用。
  + 如果您必须保留采用专用 IP 地址的旧版客户端支持，则可以通过在 [AWS 支持中心](https://console.aws.amazon.com/support/home)创建案例来请求其它 TLS 安全策略（TLSv1.3\$12025、TLSv1.2\$12025、TLSv1.2\$12021、TLSv1.2\$12019、TLSv1.2\$12018、TLSv1.1\$12016 或 TLSv1\$12016）之一。
**注意**  
在联系 AWS 支持以请求此更改之前，请考虑以下事项：  
当您将其中一个安全策略（TLSv1.3\$12025、TLSv1.2\$12025、TLSv1.2\$12021、TLSv1.2\$12019、TLSv1.2\$12018、TLSv1.1\$12016 或 TLSv1\$12016）添加到某个旧版客户端支持分配时，安全策略将应用于您的 AWS 账户中*所有*旧版客户端支持分配的*所有*非 SNI 查看器请求。但是，当查看器将 SNI 请求发送到具有旧版客户端支持的分配时，该分配的安全策略适用。要确保将您所需的安全策略应用于发送到 AWS 账户中*所有*旧版客户端支持分配的*所有*查看器请求，请将所需安全策略分别添加到每个分配。
根据定义，新安全策略不支持与旧安全策略相同的密码和协议。例如，如果您选择将分配的安全策略从 TLSv1 升级到 TLSv1.1\$12016，则该分配将不再支持 DES-CBC3-SHA 密码。有关每个安全策略支持的密码和协议的更多信息，请参阅[查看器和 CloudFront 之间支持的协议和密码](secure-connections-supported-viewer-protocols-ciphers.md)。

## 支持的 HTTP 版本
<a name="DownloadDistValuesSupportedHTTPVersions"></a>

选择您希望分配在查看器与 CloudFront 通信时支持的 HTTP 版本。

要使查看器和 CloudFront 使用 HTTP/2，查看器必须支持 TLSv1.2 或更高版本以及服务器名称标识 (SNI)。

要使查看器和 CloudFront 使用 HTTP/3，查看器必须支持 TLSv1.3 或更高版本以及服务器名称标识 (SNI)。CloudFront 支持 HTTP/3 连接迁移，允许查看器在不丢失连接的情况下切换网络。有关连接迁移的更多信息，请参阅 RFC 9000 中的[连接迁移](https://www.rfc-editor.org/rfc/rfc9000.html#name-connection-migration)。

**注意**  
有关受支持的 TLSv1.3 密码的更多信息，请参阅[查看器和 CloudFront 之间支持的协议和密码](secure-connections-supported-viewer-protocols-ciphers.md)。

**注意**  
如果您使用 Amazon Route 53，则可以使用 HTTPS 记录来支持将协议协商作为 DNS 查找的一部分（如果客户端支持）。有关更多信息，请参阅 [Create alias resource record set](CreatingCNAME.md#alternate-domain-https)。

## 默认根对象
<a name="DownloadDistValuesDefaultRootObject"></a>

可选。当查看器请求分发的根 URL (`index.html`) 而不是分发中的对象 (`https://www.example.com/`) 时，您希望 CloudFront 从您的源（例如，`https://www.example.com/product-description.html`）中请求的对象。指定一个默认根对象，以避免公开分配的内容。

名称的长度上限是 255 个字符。该名称可包含以下任何字符：
+ A-Z, a-z
+ 0-9
+ \$1 - . \$1 \$1 / \$1 " '
+ &，作为 `&amp;` 传递和返回

当您指定默认根对象时，请仅输入对象名称，例如 `index.html`。不要在对象名称前添加 `/`。

有关更多信息，请参阅 [指定默认根对象](DefaultRootObject.md)。

## 标准日志记录
<a name="DownloadDistValuesLoggingOnOff"></a>

指定您是否希望 CloudFront 记录对象的每个请求信息并存储日志文件。您可以随时启用或禁用日志记录。启用日志记录不会产生额外的费用，但您可能会产生存储和访问文件的费用。您可以随时删除日志文件。

CloudFront 支持以下标准日志记录选项：
+ [标准日志记录（v2）](standard-logging.md)– 您可以将日志发送到多种传输目标，包括 Amazon CloudWatch Logs、Amazon Data Firehose 和 Amazon Simple Storage Service（Amazon S3）。
+ [标准日志记录（传统）](AccessLogs.md)– 您只能将日志发送到 Amazon S3 存储桶。

## 连接日志
<a name="DownloadDistValuesConnectionLogs"></a>

当您为分配启用[双向身份验证](#DownloadDistValuesMutualAuthentication)时，CloudFront 会提供连接日志，这些日志捕获有关发送到分配的请求的属性。连接日志包含客户端 IP 地址和端口、客户端证书信息、连接结果以及正在使用的 TLS 密码等信息。然后可以使用这些连接日志来查看请求模式和其他趋势。

要了解有关连接日志的更多信息，请参阅[使用连接日志实现可观测性](connection-logs.md)。

## 日志前缀
<a name="DownloadDistValuesLogPrefix"></a>

（可选）如果您启用标准日志记录（旧版），请指定您希望 CloudFront 为此分配的访问日志文件名添加作为前缀的字符串（如有），例如 `exampleprefix/`。尾随斜杠 (/) 是可选的，但建议简化浏览您的日志文件。有关更多信息，请参阅 [配置标准日志记录（旧版）](standard-logging-legacy-s3.md)。

## Cookie 日志记录
<a name="DownloadDistValuesCookieLogging"></a>

如果希望 CloudFront 将 cookie 包含在访问日志中，请选择**开启**。如果您选择将 cookie 包含在日志中，CloudFront 则记录所有 cookie，而不管您如何配置此分配的缓存行为：转发所有 cookie，不转发 cookie，或将指定的 cookie 列表转发到源。

Amazon S3 不处理 cookie，因此除非您的分配也包括 Amazon EC2 或其他自定义源，否则建议您为 **Cookie 日志记录**的值选择**关闭**。

有关 cookies 的更多信息，请参阅 [根据 Cookie 缓存内容](Cookies.md)。

## 启用 IPv6（查看器请求）
<a name="DownloadDistValuesEnableIPv6"></a>

如果您希望 CloudFront 响应来自 IPv4 和 IPv6 IP 地址的查看器请求，请选择**启用 IPv6**。有关更多信息，请参阅 [为 CloudFront 分配启用 IPv6](cloudfront-enable-ipv6.md)。

## 双向身份验证
<a name="DownloadDistValuesMutualAuthentication"></a>

可选。您可以选择为 CloudFront 分配启用双向身份验证。有关更多信息，请参阅 [CloudFront 的双向 TLS 身份验证（查看器 mTLS）源双向 TLS 与 CloudFront 结合使用](mtls-authentication.md)。

## 为自定义源启用 IPv6（源请求）
<a name="DownloadDistValuesEnableIPv6-origin"></a>

当您使用自定义源（不包括 Amazon S3 和 VPC 源）时，您可以自定义分配的源设置，以选择 CloudFront 如何使用 IPv4 或 IPv6 地址连接到源。有关更多信息，请参阅 [为 CloudFront 分配启用 IPv6](cloudfront-enable-ipv6.md)。

## 注释
<a name="DownloadDistValuesComment"></a>

可选。在创建分配时，您最多可以包含 128 字符的注释。您可以随时更新注释。

## 分配状态
<a name="DownloadDistValuesEnabled"></a>

表明您是否希望分配在一经部署时就被启用或禁用：
+ *已启用*是指，只要分配一经全面部署，您就可部署使用分配域名的链接，并且用户可检索内容。无论何时启用分配，CloudFront 将接受并处理任何最终用户使用与该分配有关的域名对内容的请求。

  当您创建、修改或删除 CloudFront 分配时，需要一定的时间才能将您所做的更改传播到 CloudFront 数据库。即刻发起的对分配相关信息的请求可能不会显示出该更改。传播通常在几分钟内完成，但高系统负载或网络分区可能会延长该时间。
+ *已禁用*是指，即使分配可能已经部署且准备好使用，用户也不能使用它。无论何时禁用分配，CloudFront 都不接受任何最终用户使用与该分配有关的域名对内容的请求。除非您将分配从禁用切换到启用（通过更新分配的配置），否则任何人都不能使用它。

您可根据您想要的频率在禁用和启用之间转换分配。遵照更新分配配置的过程。有关更多信息，请参阅 [更新分配](HowToUpdateDistribution.md)。