

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 步驟 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 儲存庫之後，請解壓縮下載的檔案，然後導覽至 `application.conf` 檔案的`resources`目錄。

   1. **應用程式組態**

      在此步驟中，您會設定 SigV4 身分驗證外掛程式。您可以在應用程式中使用以下範例。如果您尚未這麼做，則需要產生 IAM 存取金鑰 （存取金鑰 ID 和私密存取金鑰），並將其儲存在 AWS 您的組態檔案中或做為環境變數。如需詳細說明，請參閱 [Cassandra 用戶端驅動程式的 AWS CLI、 AWS 開發套件或 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`，以傳回應用程式需要提供的 AWS 登入資料，以便服務帳戶可以擔任 IAM 角色。您可以根據下列範例執行此操作。

      ```
              <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 後，您可以`warning`視需要將記錄層級變更為 `info`或 。