

# ディストリビューションの設定
<a name="DownloadDistValuesGeneral"></a>

以下の値はディストリビューション全体に適用されます。

**Topics**
+ [価格クラス](#DownloadDistValuesPriceClass)
+ [AWS WAF ウェブ 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)
+ [Comment](#DownloadDistValuesComment)
+ [ディストリビューションの状態](#DownloadDistValuesEnabled)

## 価格クラス
<a name="DownloadDistValuesPriceClass"></a>

CloudFront サービスに支払う上限価格に対応する価格クラスを選択します。デフォルトでは、CloudFront は、すべての CloudFront リージョンのエッジロケーションからオブジェクトを供給します。

料金クラスと、選択した料金クラスがディストリビューションの CloudFront パフォーマンスに与える影響の詳細については、「[CloudFront の料金](https://aws.amazon.com/cloudfront/pricing/)」を参照してください。

## AWS WAF ウェブ ACL
<a name="DownloadDistValuesWAFWebACL"></a>

CloudFront ディストリビューションは、ウェブアプリケーションと API を保護してリクエストがサーバーに到達する前にブロックできるようにするウェブアプリケーションファイアウォールである [AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf) で保護できます。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/)を参照してください。

## 代替ドメイン名 (CNAME)
<a name="DownloadDistValuesCNAME"></a>

オプション。ディストリビューションを作成するときに CloudFront が割り当てるドメイン名ではなく、オブジェクトの URL に使用する 1 つ以上のドメイン名を指定します。ドメイン名を所有しているか、あるいはこのドメイン名を使用する許可があることが必要です。この許可は、SSL/TLS 証明書を追加することで検証します。

 たとえば、次のオブジェクトの URL があります。

`/images/image.jpg`

この URL を次のように表示します。

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

次のようには指定しません。

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

この場合、`www.example.com` の CNAME を追加します。

**重要**  
ディストリビューションに `www.example.com` の CNAME を追加する場合、さらに以下を実行する必要があります。  
DNS サービスを使用して CNAME レコードを作成 (または更新) して、`www.example.com` のクエリを `d111111abcdef8.cloudfront.net` にルーティングします。
ディストリビューションに追加するドメイン名 (CNAME) が対象の信頼される認証機関 (CA) から証明書を CloudFront に追加して、このドメイン名を使用する認可を検証します。
ドメインの DNS サービスプロバイダーがある CNAME レコードを作成する許可が必要です。通常、これはドメインを所有している、またはドメイン所有者向けにアプリケーションを開発していることを示します。

ディストリビューションに対して作成できる代替ドメイン名の現在の最大数、またはクォータの引き上げを要求する代替ドメイン名の最大数については、「[ディストリビューションの一般的なクォータ](cloudfront-limits.md#limits-web-distributions)」を参照してください。

代替ドメイン名の詳細については、「[代替ドメイン名 (CNAME) を追加することによって、カスタム URL を使用する](CNAMEs.md)」を参照してください。CloudFront URL の詳細については、「[CloudFront でファイルの URL 形式をカスタマイズする](LinkFormat.md)」を参照してください。

## SSL 証明書
<a name="DownloadDistValuesSSLCertificate"></a>

ディストリビューションで使用する代替ドメイン名を指定した場合は、[**Custom SSL Certificate (カスタム SSL 証明書)**] を選択してこの代替ドメイン名を使用する許可を検証し、これを対象とする証明書を選択します。ビューワーが HTTPS を使用してオブジェクトにアクセスするようにする場合は、それをサポートしている設定を選択します。
+ **デフォルトの CloudFront 証明書 (\$1.cloudfront.net)** – オブジェクトの URL で `https://d111111abcdef8.cloudfront.net/image1.jpg` のような CloudFront ドメイン名を使用する場合は、このオプションを選択します。
+ **独自 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 をサポートしない古いビューワーを使用している場合、ビューワーが応答する方法は [**Clients Supported (サポートされるクライアント)**] で選択した値に応じて異なります。
  + [**All Clients (すべてのクライアント)**]: CloudFront ドメイン名が SSL/TLS 証明書のドメイン名と一致しないため、ビューワーには警告が表示されます。
  + [**Only Clients that Support Server Name Indication (SNI) (Server Name Indication (SNI) をサポートするクライアントのみ)**]: CloudFront はオブジェクトを返さないでビューワーとの接続を中断します。

## 独自 SSL クライアントのサポート
<a name="DownloadDistValuesClientsSupported"></a>

[**SSL 証明書**] で [**カスタム SSL 証明書 (example.com)**] を選択した場合にのみ適用されます。ディストリビューションに 1 つ以上の代替ドメイン名と独自 SSL 証明書を指定した場合は、CloudFront が HTTPS リクエストを処理する方法を選択します。
+ [**Clients that Support Server Name Indication (SNI) - (Recommended) (Server Name Indication (SNI) をサポートするクライアント - (推奨))**] – この設定では、ほとんどすべての最新のウェブブラウザとクライアントは、SNI をサポートしているため、ディストリビューションに接続できます。ただし、一部のビューワーは SNI をサポートしていない古いウェブブラウザやクライアントを使用している可能性があります。つまり、一部のビューワーはディストリビューションに接続できません。

  CloudFront API を使用してこの設定を適用するには、`sni-only` フィールドで `SSLSupportMethod` を指定します。CloudFormation では、このフィールドの名前は `SslSupportMethod` です (大文字と小文字の変更に注意してください)。
+ [**Legacy Clients Support (レガシークライアントサポート)**] – この設定では、SNI をサポートしていない古いウェブブラウザとクライアントはディストリビューションに接続できます。ただし、この設定では、追加の月額料金が発生します。正確な価格については、[[Amazon CloudFront Pricing (Amazon CloudFront の料金)](https://aws.amazon.com/cloudfront/pricing/)] ページに移動し、[**Dedicated IP custom SSL (専用 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 接続に使用するセキュリティポリシーを指定します。セキュリティポリシーは 2 通りの設定を決定します。
+ CloudFront でビューワーとの通信に使用する最小の SSL/TLS プロトコル。
+ ビューワーに返すコンテンツを暗号化するために CloudFront で使用できる暗号。

セキュリティポリシー (各ポリシーに含まれるプロトコルや暗号など) の詳細については、「[ビューワーと CloudFront との間でサポートされているプロトコルと暗号](secure-connections-supported-viewer-protocols-ciphers.md)」を参照してください。

利用可能なセキュリティポリシーは、[**SSL Certificate (SSL 証明書)**] および [**Custom SSL Client Support (独自 SSL クライアントサポート)**] に指定する値によって異なります (CloudFront API では `CloudFrontDefaultCertificate` および `SSLSupportMethod` が該当します)。
+ [**SSL Certificate (SSL 証明書)**] が [**Default CloudFront Certificate (デフォルトの CloudFront 証明書) (\$1.cloudfront.net)**] である場合 (API では `CloudFrontDefaultCertificate` が `true` である場合)、CloudFront はセキュリティポリシーを自動的に TLSv1 に設定します。
+ **[SSL 証明書]** が **[カスタム SSL 証明書 (example.com)]** で、*かつ* **[カスタム SSL クライアントのサポート]** が **[Server Name Indication (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 Support に連絡してこの変更をリクエストする前に、以下の点を考慮してください。  
これらのセキュリティポリシー (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 以降と Server Name Indication (SNI) をサポートしている必要があります。

ビューワーと CloudFront が HTTP/3 を使用するには、ビューワーが TLSv1.2 以降と Server Name Indication (SNI) をサポートしている必要があります。CloudFront は、ビューワーが接続を失わずにネットワークを切り替えることができるように、HTTP/3 接続の移行をサポートしています。接続の移行の詳細については、RFC 9000 で「[Connection Migration](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>

オプション。ビューワーがディストリビューション内のオブジェクト (`index.html`) ではなくディストリビューションのルート URL (`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 をアクセスログに含めるようにするには、[**On (オン)**] を選択します。Cookie をログに含めるように選択した場合、CloudFront はすべての Cookie をログに記録します。このディストリビューションのキャッシュ動作がどのように構成されているか (オリジンにすべての Cookie を転送するか、Cookie を転送しないか、指定された一連の Coolie を転送するか) は関係ありません。

Amazon S3 は Cookie を処理しません。したがって、ディストリビューションに Amazon EC2 または他のカスタムオリジンも含まれていない限り、[**Cookie Logging (Cookie ログ記録)**] の値に [**Off (オフ)**] を選択することをお勧めします。

Cookie の詳細については、「[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 認証 (Viewer mTLS)オリジンの相互 TLS と CloudFront](mtls-authentication.md)」を参照してください。

## カスタムオリジン (オリジンリクエスト) の IPv6 を有効にする
<a name="DownloadDistValuesEnableIPv6-origin"></a>

カスタムオリジン (Amazon S3 および VPC オリジンを除く) を使用する場合、ディストリビューションのオリジン設定をカスタマイズして、IPv4 または IPv6 アドレスを使用して CloudFront がオリジンに接続する方法を選択できます。詳細については、「[CloudFront ディストリビューションの IPv6 を有効にする](cloudfront-enable-ipv6.md)」を参照してください。

## Comment
<a name="DownloadDistValuesComment"></a>

(オプション)。ディストリビューションを作成するときに、最大で 128 文字のコメントを含めることができます。コメントの更新はいつでも行うことができます。

## ディストリビューションの状態
<a name="DownloadDistValuesEnabled"></a>

ディストリビューションがデプロイされた後にディストリビューションを有効または無効のどちらにするかを示します。
+ *Enabled (有効)*: ディストリビューションが完全にデプロイされると、ディストリビューションのドメイン名を使用するリンクをデプロイでき、ユーザーはコンテンツを取得できます。ディストリビューションを有効にすると、CloudFront はそのディストリビューションに関連付けられたドメイン名を使用するコンテンツへのエンドユーザーリクエストを受け付けて処理します。

  CloudFront ディストリビューションの作成、変更、削除を行った場合、その変更が CloudFront データベースに伝達されるまで時間がかかります。変更直後に出したディストリビューションに関する情報のリクエストには、変更が反映されていない可能性があります。通常、伝達は数分以内で完了しますが、システムの高負荷またはネットワークパーティションによっては、それより時間がかかる可能性があります。
+ *Disabled (無効)*: ディストリビューションがデプロイされていて、使用準備ができていても、ユーザーはディストリビューションを使用できません。ディストリビューションを無効にするときはいつでも、そのディストリビューションに関連付けられたドメイン名を使用するコンテンツへのエンドユーザーリクエストを CloudFront は受け付けません。(ディストリビューションの構成を更新することで) ディストリビューションを無効から有効に切り替えるまで、誰もディストリビューションを使用できません。

ディストリビューションの無効と有効は何度でも切り替えることができます。ディストリビューションの構成を更新するプロセスに従います。詳細については、「[ディストリビューションを更新する](HowToUpdateDistribution.md)」を参照してください。