

# オリジンリクエストポリシーを作成する
<a name="origin-request-create-origin-request-policy"></a>

オリジンリクエストポリシーを使用して、CloudFront がオリジンに送信するリクエストに含まれる値 (URL クエリ文字列、HTTP ヘッダー、Cookie) を制御できます。オリジンリクエストポリシーは、CloudFront コンソール、AWS Command Line Interface (AWS CLI)、または CloudFront API を使用して作成できます。

オリジンリクエストポリシーを作成したら、CloudFront ディストリビューションの 1 つ以上のキャッシュ動作にアタッチします。

オリジンリクエストポリシーは必須ではありません。キャッシュ動作にオリジンリクエストポリシーがアタッチされていない場合、オリジンリクエストには、[キャッシュポリシー](cache-key-understand-cache-policy.md)で指定されたすべての値が含まれますが、それ以上は含まれません。

**注記**  
オリジンリクエストポリシーを使用するには、キャッシュ動作でも[キャッシュポリシー](controlling-the-cache-key.md)を使用する必要があります。キャッシュポリシーがないと、キャッシュ動作でオリジンリクエストポリシーを使用することはできません。

------
#### [ Console ]

**オリジンリクエストポリシーを作成するには (コンソール)**

1. AWS マネジメントコンソール にログインし、[https://console.aws.amazon.com/cloudfront/v4/home?#/policies](https://console.aws.amazon.com/cloudfront/v4/home?#/policies) で CloudFront コンソールの [**Policies**] (ポリシー) ページを開きます。

1. [**オリジンリクエスト**] を選択してから、[**オリジンリクエストポリシーの作成**] を選択します。

1. このオリジンリクエストポリシーに目的の設定を選択します。詳細については、「[オリジンリクエストポリシーを理解する](origin-request-understand-origin-request-policy.md)」を参照してください。

1. 終了したら、[**作成**] を選択します。

オリジンリクエストポリシーを作成したら、それをキャッシュ動作にアタッチできます。

**オリジンリクエストポリシーを既存のディストリビューションにアタッチするには (コンソール)**

1. [https://console.aws.amazon.com/cloudfront/v4/home#/distributions](https://console.aws.amazon.com/cloudfront/v4/home#/distributions) で CloudFront コンソールの [**Distributions**] (ディストリビューション) ページを開きます。

1. 更新するディストリビューションを選択し、[**動作**] タブを選択します。

1. 更新するキャッシュ動作を選択し、[**編集**] を選択します。

   または、新しいキャッシュ動作を作成するには、[**動作を作成**] を選択します。

1. [**キャッシュキーとオリジンリクエスト**] セクションで、[**キャッシュポリシーとオリジンリクエストポリシー**] が選択されていることを確認します。

1. [**オリジンリクエストポリシー**] では、このキャッシュ動作にアタッチするオリジンリクエストポリシーを選択します。

1. ページの最下部で [**変更の保存**] を選択します。

**オリジンリクエストポリシーを新しいディストリビューションにアタッチするには (コンソール)**

1.  で CloudFront コンソールを開きます[https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home)

1. [**ディストリビューションの作成**] を選択します。

1. [**キャッシュキーとオリジンリクエスト**] セクションで、[**キャッシュポリシーとオリジンリクエストポリシー**] が選択されていることを確認します。

1. **[Origin request policy]** (オリジンリクエストポリシー) で、このディストリビューションのデフォルトのキャッシュ動作にアタッチするオリジンリクエストポリシーを選択します。

1. オリジン、デフォルトのキャッシュ動作、その他のディストリビューション設定に必要な設定を選択します。詳細については、「[すべてのディストリビューション設定リファレンス](distribution-web-values-specify.md)」を参照してください。

1. 終了したら、[**ディストリビューションの作成**] を選択します。

------
#### [ CLI ]

AWS Command Line Interface (AWS CLI) でオリジンリクエストポリシーを作成するには、**aws cloudfront create-origin-request-policy** コマンドを使用します。コマンドの入力パラメータは、コマンドライン入力として個別に指定せずに、入力ファイルを使用して指定できます。

**オリジンリクエストポリシーを作成するには (入力ファイルを含む CLI)**

1. 次のコマンドを使用して、`origin-request-policy.yaml` コマンドのすべての入力パラメータを含む **create-origin-request-policy** という名前のファイルを作成します。

   ```
   aws cloudfront create-origin-request-policy --generate-cli-skeleton yaml-input > origin-request-policy.yaml
   ```

1. 先ほど作成した `origin-request-policy.yaml` という名前のファイルを開きます。ファイルを編集して、必要なオリジンリクエストポリシー設定を指定し、ファイルを保存します。ファイルからオプションのフィールドを削除することはできますが、必須フィールドは削除しないでください。

   オリジンリクエストポリシー設定の詳細については、「[オリジンリクエストポリシーを理解する](origin-request-understand-origin-request-policy.md)」を参照してください。

1. 次のコマンドを使用して、`origin-request-policy.yaml` ファイルの入力パラメータを使用し、オリジンリクエストポリシーを作成します。

   ```
   aws cloudfront create-origin-request-policy --cli-input-yaml file://origin-request-policy.yaml
   ```

   コマンドの出力の `Id` 値を書き留めます。これはオリジンリクエストポリシー ID であり、オリジンリクエストポリシーを CloudFront ディストリビューションのキャッシュ動作にアタッチするために必要です。

**オリジンリクエストポリシーを既存のディストリビューションにアタッチするには (入力ファイルを含む CLI)**

1. 以下のコマンドを使用して、更新する CloudFront ディストリビューションのディストリビューション設定を保存します。*distribution\$1ID* をディストリビューションの ID に置き換えます。

   ```
   aws cloudfront get-distribution-config --id distribution_ID --output yaml > dist-config.yaml
   ```

1. 先ほど作成した `dist-config.yaml` という名前のファイルを開きます。ファイルを編集し、オリジンリクエストポリシーを使用するように更新する各キャッシュ動作に次の変更を加えます。
   + キャッシュ動作で、`OriginRequestPolicyId` という名前のフィールドを追加します。フィールドの値には、ポリシーの作成後に書き留めたオリジンリクエストポリシー ID を使用します。
   + `ETag` フィールドの名前を `IfMatch` に変更します。ただし、フィールドの値は変更しないでください。

   完了したら、ファイルを保存します。

1. オリジンリクエストポリシーを使用するようにディストリビューションを更新するには、次のコマンドを使用します。*distribution\$1ID* をディストリビューションの ID に置き換えます。

   ```
   aws cloudfront update-distribution --id distribution_ID --cli-input-yaml file://dist-config.yaml
   ```

**オリジンリクエストポリシーを新しいディストリビューションにアタッチするには (入力ファイルを含む CLI)**

1. 次のコマンドを使用して、`distribution.yaml` コマンドのすべての入力パラメータを含む **create-distribution** という名前のファイルを作成します。

   ```
   aws cloudfront create-distribution --generate-cli-skeleton yaml-input > distribution.yaml
   ```

1. 先ほど作成した `distribution.yaml` という名前のファイルを開きます。デフォルトのキャッシュ動作の [`OriginRequestPolicyId`] フィールドに、ポリシーの作成後に書き留めたオリジンリクエストポリシー ID を入力します。ファイルの編集を続行して必要なディストリビューション設定を指定し、完了したらファイルを保存します。

   ディストリビューション設定の詳細については、「[すべてのディストリビューション設定リファレンス](distribution-web-values-specify.md)」を参照してください。

1. 次のコマンドを使用して、`distribution.yaml` ファイルの入力パラメータを使用し、ディストリビューションを作成します。

   ```
   aws cloudfront create-distribution --cli-input-yaml file://distribution.yaml
   ```

------
#### [ API ]

CloudFront API を使用してオリジンリクエストポリシーを作成するには、[CreateOriginRequestPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateOriginRequestPolicy.html) を使用します。この API コールで指定するフィールドの詳細については、「‭[オリジンリクエストポリシーを理解する](origin-request-understand-origin-request-policy.md)‬」と、AWS SDK またはその他 API クライアントの API リファレンスドキュメントを参照してください。

オリジンリクエストポリシーを作成したら、次の API コールのいずれかを使用して、それをキャッシュ動作にアタッチできます。
+ 既存のディストリビューションのキャッシュ動作にアタッチするには、[UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) を使用します。
+ 新しいディストリビューションのキャッシュ動作にアタッチするには、[CreateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistribution.html) を使用します。

これらの API コールの両方について、キャッシュ動作内で、`OriginRequestPolicyId` フィールドにオリジンリクエストポリシーの ID を指定します。これらの API コールで指定するその他フィールドの詳細については、「[すべてのディストリビューション設定リファレンス](distribution-web-values-specify.md)」と、AWS SDK またはその他 API クライアントの API リファレンスドキュメントを参照してください。

------