

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

# ステップ 2: アプリケーションを設定する
<a name="EKS-tutorial-step2"></a>

このステップでは、SigV4 プラグインを使用して Amazon Keyspaces に接続するアプリケーションを構築します。[Github](https://github.com/aws-samples/amazon-keyspaces-examples/tree/main/java/datastax-v4/eks) の Amazon Keyspaces サンプルコードリポジトリから、サンプル Java アプリケーションを表示し、ダウンロードできます。または、独自のアプリケーションを使用することもできます。以下の手順に従って、すべての設定手順を終わらせてください。

**アプリケーションを設定して必要な依存関係を追加する**

1. 次のコマンドを使用して Github リポジトリのクローンを作成し、サンプル Java アプリケーションをダウンロードできます。

   ```
   git clone https://github.com/aws-samples/amazon-keyspaces-examples.git
   ```

1. Github リポジトリをダウンロードしたら、ダウンロードしたファイルを解凍し、`resources` ディレクトリの `application.conf` ファイルに移動します。

   1. **アプリケーションの設定**

      この手順では、SigV4 認証プラグインを設定します。以下のサンプルをアプリケーションで使用できます。まだ作成していない場合は、IAM アクセスキー (アクセスキー ID とシークレットアクセスキー) AWS を生成し、設定ファイルまたは環境変数として保存する必要があります。詳細な手順については、「[AWS CLI、 AWS SDK、または Cassandra クライアントドライバー用の Amazon Keyspaces SigV4 プラグインに必要な認証情報](SigV4_credentials.md)」を参照してください。必要に応じて、Amazon Keyspaces の AWS リージョンとサービスエンドポイントを更新します。サービスエンドポイントの詳細については、「[Amazon Keyspaces のサービスエンドポイント](programmatic.endpoints.md)」を参照してください。トラストストアの場所、トラストストア名、トラストストアパスワードは、実際の値に置き換えてください。

      ```
      datastax-java-driver {
        basic.contact-points = ["cassandra.us-east-1.amazonaws.com:9142"]
        basic.load-balancing-policy.local-datacenter = "us-east-1"
        advanced.auth-provider {
          class = software.aws.mcs.auth.SigV4AuthProvider
          aws-region = "us-east-1"
        }
        advanced.ssl-engine-factory {
          class = DefaultSslEngineFactory
          truststore-path = "truststore_locationtruststore_name.jks"
          truststore-password = "truststore_password;"
        }
      }
      ```

   1. **STS モジュールの依存関係を追加します。**

      これにより、サービスアカウント`WebIdentityTokenCredentialsProvider`が IAM ロールを引き受けることができるように、アプリケーションが提供する必要がある AWS 認証情報を返す を使用する機能が追加されます。この作業は、次の例を参考にして行います。

      ```
              <dependency>
                  <groupId>com.amazonaws</groupId>
                  <artifactId>aws-java-sdk-sts</artifactId>
                  <version>1.11.717</version> 
              </dependency>
      ```

   1. **SigV4 の依存関係を追加します。**

       このパッケージは、Amazon Keyspaces への認証に必要な SigV4 認証プラグインを実装します。

      ```
              <dependency>
                  <groupId>software.aws.mcs</groupId>
                  <artifactId>aws-sigv4-auth-cassandra-java-driver-plugin</artifactId>
                  <version>4.0.3</version> 
              </dependency>
      ```

1. **ログ記録の依存関係を追加します。**

    ログがなければ、接続の問題をトラブルシューティングすることができません。このチュートリアルでは、`slf4j` をログ記録のフレームワークとして使用し、`logback.xml` を使用してログ出力を保存します。ログ記録のレベルを `debug` に設定して、接続を確立します。次の例を使用して、依存関係を追加できます。

   ```
           <dependency>
               <groupId>org.slf4j</groupId>
               <artifactId>slf4j-api</artifactId>
               <version>2.0.5</version> 
           </dependency>
   ```

   次のコードスニペットを使用して、ログ記録を設定できます。

   ```
   <configuration>
       <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
           
           <encoder>
               <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
           </encoder>
       </appender>
   
       <root level="debug">
           <appender-ref ref="STDOUT" />
       </rootv
   </configuration>
   ```
**注記**  
`debug` レベルは、接続エラーを調査するために必要です。アプリケーションから Amazon Keyspaces に正常に接続できたら、ログ記録レベルを適宜 `info` または `warning` に変更できます。