翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
このステップでは、SigV4 プラグインを使用して Amazon Keyspaces に接続するアプリケーションを構築します。Github
アプリケーションを設定して必要な依存関係を追加する
次のコマンドを使用して Github リポジトリのクローンを作成し、サンプル Java アプリケーションをダウンロードできます。
git clone https://github.com/aws-samples/amazon-keyspaces-examples.git
Github リポジトリをダウンロードしたら、ダウンロードしたファイルを解凍し、
resources
ディレクトリのapplication.conf
ファイルに移動します。アプリケーションの設定
この手順では、SigV4 認証プラグインを設定します。以下のサンプルをアプリケーションで使用できます。まだ行っていない場合は、 IAM アクセスキー (アクセスキー ID とシークレットアクセスキー) を生成し、 AWS 設定ファイルまたは環境変数として保存する必要があります。詳細な手順については、「AWS CLI、、 AWS SDKまたは Cassandra クライアントドライバー用の Amazon Keyspaces SigV4 プラグインに必要な認証情報」を参照してください。必要に応じて、AWS リージョンと Amazon Keyspaces のサービスエンドポイントを変更してください。サービスエンドポイントの詳細については、「Amazon Keyspaces のサービスエンドポイント」を参照してください。トラストストアの場所、トラストストア名、トラストストアパスワードは、実際の値に置き換えてください。
datastax-java-driver { basic.contact-points = ["cassandra.
aws-region
.amazonaws.com:9142"] basic.load-balancing-policy.local-datacenter = "aws-region
" advanced.auth-provider { class = software.aws.mcs.auth.SigV4AuthProvider aws-region = "aws-region
" } advanced.ssl-engine-factory { class = DefaultSslEngineFactory truststore-path = "truststore_location
truststore_name
.jks" truststore-password = "truststore_password
;" } }STS モジュールの依存関係を追加します。
これにより、
WebIdentityTokenCredentialsProvider
を使用できるようになります。このプロバイダーが返す AWS 認証情報をアプリケーションが提供しないと、サービスアカウントで IAM ロールを引き受けることができません。この作業は、次の例を参考にして行います。<dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-sts</artifactId> <version>1.11.717</version> </dependency>
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>
ログ記録の依存関係を追加します。
ログがなければ、接続の問題をトラブルシューティングすることができません。このチュートリアルでは、
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
に変更できます。