本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在此步骤中,您将构建使用 SigV4 插件连接到 Amazon Keyspaces 的应用程序。您可以从 Github
配置您的应用程序并添加所需的依赖关系。
您可以使用以下命令克隆 Github 存储库,从而下载示例 Java 应用程序。
git clone https://github.com/aws-samples/amazon-keyspaces-examples.git
下载 Github 存储库后,解压缩下载的文件并导航到
application.conf
文件的resources
目录。应用程序配置
在此步骤中,您将配置 SigV4 身份验证插件。您可以在应用程序中使用以下示例。如果您尚未执行这一操作,则需要生成 IAM 访问密钥(一个访问密钥 ID 和一个私密访问密钥),并将其保存在 AWS 配置文件中或作为环境变量保存。有关详细说明,请参阅 用于 Cassandra AWS CLI客户端驱动程序的 AWS SDK、或 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
。