

# キーバリューストアを関数に関連付ける
<a name="kvs-with-functions-associate"></a>

キーバリューストアを作成したら、関数を更新してキーバリューストアに関連付けることができます。この関連付けは、キーバリューストア内のキーと値のペアを、関数で使用するために必要です。以下のルールが適用されます。
+ 1 つの関数には 1 つのキーバリューストアのみを関連付けることができます。
+ 同じキーバリューストアを複数の関数に関連付けることができます。

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

**キーバリューストアを関数に関連付けるには**

1. CloudFront コンソール ([https://console.aws.amazon.com/cloudfront/v4/home#/functions](https://console.aws.amazon.com/cloudfront/v4/home#/functions)) にサインインし、**[関数]** ページを選択します。

1. 関数名を選択します。

1. **[KeyValueStore を関連付け]** セクションに移動して、**[既存の KeyValueStore を関連付け]** を選択します。

1. 関数のキーと値のペアを含むキーバリューストアを選択し、**[KeyValueStore を関連付ける]** を選択します。

   CloudFront はストアを直ちに関数に関連付けます。関数を保存する必要はありません。

1. 別のキーバリューストアを指定するには、**[関連付けられた KeyValueStore を更新]** を選択し、別のキーバリューストア名を選択してから、**[KeyValueStore を関連付ける]** を選択します。

詳細については、「[関数を更新する](update-function.md)」を参照してください。

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

**キーバリューストアを関数に関連付けるには**
+ `MaxAge` 関数を更新し、キーバリューストアのリソースを関連付けるには、次のコマンドを実行します。

  ```
  aws cloudfront update-function \
      --name MaxAge \
      --function-config '{"Comment":"Max Age 2 years","Runtime":"cloudfront-js-2.0","KeyValueStoreAssociations":{"Quantity":1,"Items":[{"KeyValueStoreARN":"arn:aws:cloudfront::123456789012:key-value-store/8aa76c93-3198-462c-aaf6-example"}]}}' \
      --function-code fileb://function-max-age-v1.js \
      --if-match ETVABCEXAMPLE
  ```
+ キーバリューストアを関数に関連付けるには、`KeyValueStoreAssociations` パラメータとキーバリューストア ARN を指定します。
+ 関連付けを変更するには、別のキーバリューストア ARN を指定します。
+ 関連付けを削除するには、`KeyValueStoreAssociations` パラメータを消去します。

詳細については、「[関数を更新する](update-function.md)」を参照してください。

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

**キーバリューストアを関数に関連付けるには**
+ [UpdateFunction](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateFunction.html) API オペレーションを使用します。詳細については、「[関数を更新する](update-function.md)」を参照してください。

------

**注意事項**  
キーと値のペアを変更せずにキーバリューストアを変更した場合や、キーバリューストア内のキーと値のペアのみを変更した場合は、キーバリューストアを再度関連付ける必要はありません。また、関数を再発行する必要もありません。  
ただし、関数をテストして、正常に動作することを確認することをお勧めします。詳細については、「[関数をテストする](test-function.md)」を参照してください。
特定のキーバリューストアを使用するすべての関数を表示できます。CloudFront コンソールで、キーバリューストアの詳細ページを選択します。