

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS AppConfig エージェントを使用せずに設定データを取得する
<a name="about-data-plane"></a>

から設定データを取得する推奨方法は、Amazon が開発および管理する AWS AppConfig エージェントを使用すること AWS AppConfig です。エージェントを使用すると、設定データをローカルにキャッシュし、データ AWS AppConfig プレーンサービスを更新のために非同期的にポーリングできます。このキャッシュ/ポーリングプロセスにより、レイテンシーとコストを最小限に抑えながら、アプリケーションで設定データを常に利用できるようになります。エージェントを使用しない場合は、 AWS AppConfig データプレーンサービスから直接パブリック APIs を呼び出すことができます。

データプレーンサービスは、[StartConfigurationSession](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html) と [GetLatestConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html) という 2 つの API アクションを使用します。データプレーンサービスは、 AWS AppConfig コントロールプレーンとは[別のエンドポイント](https://docs.aws.amazon.com/general/latest/gr/appconfig.html#appconfigdata_data_plane)も使用します。

**注記**  
データプレーンサービスは、`GetConfiguration` API アクションを使用して設定データを取得する以前のプロセスに代わるものです。`GetConfiguration` API は非推奨です。

**仕組み**  
データプレーンサービスを使用して AWS AppConfig APIs を直接呼び出すプロセスは次のとおりです。

アプリケーションは、最初に [StartConfigurationSession](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html) API オペレーションを使用して設定セッションを確立確立することで、設定データを取得します。次に、セッションのクライアントは定期的に [‬GetLatestConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html) を呼び出し、最新の利用可能なデータを確認して取得します。

`StartConfigurationSession` が呼び出されると、コードは次の情報を送信します。
+ セッションが追跡する AWS AppConfig アプリケーション、環境、および設定プロファイルの識別子 (ID または名前）。
+ （オプショナル） セッションクライアントが `GetLatestConfiguration` を呼び出すまでに待機しなければならない最短時間

応答として、 はセッションのクライアントに渡す `InitialConfigurationToken` AWS AppConfig を提供し、そのセッション`GetLatestConfiguration`を初めて呼び出すときに を使用します。

**重要**  
このトークンは、`GetLatestConfiguration` の最初の呼び出し時に1回だけ使用する必要があります。以降の `GetLatestConfiguration` への呼び出しでは、`GetLatestConfiguration` 応答 (`NextPollConfigurationToken`) で新しいトークンを使用する*必要*があります。トークンは、ロングポーリングのユースケースをサポートするため、最大 24 時間有効です。`GetLatestConfiguration` コールで期限切れのトークンが使用されると、システムから返されます `BadRequestException`。

`GetLatestConfiguration` を呼び出すと、クライアントコードは最新の `ConfigurationToken` 値を送信し、応答を受信します。
+ `NextPollConfigurationToken` :次回の`GetLatestConfiguration`への次の呼び出しで使用する`ConfigurationToken`値。
+ `NextPollIntervalInSeconds`：クライアントが次に `GetLatestConfiguration` を呼び出すまで待機する時間。
+ 設定:セッション用の最新データ。クライアントにすでに最新バージョンの設定がある場合は、この値は空になる可能性があります。

**重要**  
次の重要な情報に注意してください。  
[StartConfigurationSession](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html) API は、サービスとのセッションを確立するために、アプリケーション、環境、設定プロファイル、およびクライアントごとに 1 回のみ呼び出す必要があります。これは、通常、アプリケーションの起動時または設定の初回取得の直前に行われます。
`KmsKeyIdentifier` を使用して設定をデプロイする場合、設定を受け取るリクエストには `kms:Decrypt` レスポンス権限が含まれている必要があります。詳細については、*‬AWS Key Management Service API リファレンス*の「[復号化](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)‬」を参照してください。
以前は設定データを取得するために使用されていた `GetConfiguration` API オペレーションは廃止されました。`GetConfiguration` API オペレーションは暗号化された設定をサポートしません。

## (例) AWS AppConfig APIs を呼び出して設定を取得する
<a name="appconfig-retrieving-the-configuration-example"></a>

次の AWS CLI 例は、 AWS AppConfig Data `StartConfigurationSession`および `GetLatestConfiguration` API オペレーションを使用して設定データを取得する方法を示しています。最初のコマンドは設定セッションを開始します。この呼び出しには、 AWS AppConfig アプリケーション、環境、および設定プロファイルの IDs (または名前) が含まれます。API は、設定データをフェッチするために使用される `InitialConfigurationToken` を返します。

```
aws appconfigdata start-configuration-session \
    --application-identifier application_name_or_ID \
    --environment-identifier environment_name_or_ID \
    --configuration-profile-identifier configuration_profile_name_or_ID
```

システムから以下の形式の情報で応答します。

```
{
   "InitialConfigurationToken": initial configuration token
}
```

セッションを開始したら、設定データをフェッチするために、[InitialConfigurationToken](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_StartConfigurationSession.html#API_appconfigdata_StartConfigurationSession_ResponseSyntax) を使用して [GetLatestConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html) を呼び出します。設定データは、`mydata.json` ファイルに保存されます。

```
aws appconfigdata get-latest-configuration \
    --configuration-token initial configuration token mydata.json
```

`GetLatestConfiguration` への初回呼び出しでは、`StartConfigurationSession` から取得された `ConfigurationToken` を使用します。次の情報が返されます。

```
{
    "NextPollConfigurationToken" : next configuration token,
    "ContentType" : content type of configuration,
    "NextPollIntervalInSeconds" : 60
}
```

それ以降の `GetLatestConfiguration` への呼び出しでは、前の応答から `NextPollConfigurationToken` を提供する*必要*があります。

```
aws appconfigdata get-latest-configuration \
    --configuration-token next configuration token mydata.json
```

**重要**  
`GetLatestConfiguration` API オペレーションに関する以下の重要な詳細に留意してください。‬  
`GetLatestConfiguration` 応答には、設定データを示す `Configuration` セクションが含まれています。`Configuration` セクションは、新規または更新された設定データをシステムが検出した場合にのみ表示されます。新規または更新された設定データをシステムが検出しない場合、`Configuration` データは空です。
`GetLatestConfiguration` からの応答があるたびに新しい `ConfigurationToken` を受け取ります。
予算、予想頻度、設定のターゲット数に基づいて、`GetLatestConfiguration` API コールのポーリング頻度を調整することをお勧めします。