Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Étape 2 : Configuration de l'application
Au cours de cette étape, vous allez créer votre application qui se connecte à Amazon Keyspaces à l'aide du plugin SigV4. Vous pouvez consulter et télécharger l'exemple d'application Java depuis le dépôt d'exemples de code Amazon Keyspaces sur Github.
Configurez votre application et ajoutez les dépendances requises.
Vous pouvez télécharger l'exemple d'application Java en clonant le référentiel Github à l'aide de la commande suivante.
git clone https://github.com/aws-samples/amazon-keyspaces-examples.git
Après avoir téléchargé le dépôt Github, décompressez le fichier téléchargé et accédez au
resources
répertoire du fichier.application.conf
Configuration de l'application
Au cours de cette étape, vous configurez le plugin d'authentification SigV4. Vous pouvez utiliser l'exemple suivant dans votre application. Si ce n'est pas déjà fait, vous devez générer vos clés d'accès IAM (un identifiant de clé d'accès et une clé d'accès secrète) et les enregistrer dans votre fichier de AWS configuration ou en tant que variables d'environnement. Pour obtenir des instructions complètes, veuillez consulter Informations d'identification requises par le AWS CLI, le AWS SDK, ou le plugin Amazon Keyspaces SigV4 pour les pilotes clients Cassandra. Mettez à jour la AWS région et le point de terminaison du service pour Amazon Keyspaces selon les besoins. Pour plus de points de terminaison de service, voirPoints de terminaison de service pour Amazon Keyspaces. Remplacez l'emplacement du truststore, le nom du truststore et le mot de passe du truststore par les vôtres.
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
;" } }Ajoutez la dépendance du module STS.
Cela permet d'utiliser un
WebIdentityTokenCredentialsProvider
qui renvoie les AWS informations d'identification que l'application doit fournir pour que le compte de service puisse assumer le rôle IAM. Vous pouvez le faire en vous basant sur l'exemple suivant.<dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-sts</artifactId> <version>1.11.717</version> </dependency>
Ajoutez la dépendance SigV4.
Ce package implémente le plugin d'authentification SigV4 qui est nécessaire pour s'authentifier auprès d'Amazon Keyspaces.
<dependency> <groupId>software.aws.mcs</groupId> <artifactId>aws-sigv4-auth-cassandra-java-driver-plugin</artifactId> <version>4.0.3</version> </dependency>
Ajoutez une dépendance de journalisation.
Sans journaux, il est impossible de résoudre les problèmes de connexion. Dans ce didacticiel, nous l'utilisons
slf4j
comme framework de journalisation et nous l'utilisonslogback.xml
pour stocker la sortie du journal. Nous avons défini le niveau de journalisationdebug
sur pour établir la connexion. Vous pouvez utiliser l'exemple suivant pour ajouter la dépendance.<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>2.0.5</version> </dependency>
Vous pouvez utiliser l'extrait de code suivant pour configurer la journalisation.
<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>
Note
Ce
debug
niveau est nécessaire pour étudier les défaillances de connexion. Une fois que vous vous êtes connecté avec succès à Amazon Keyspaces depuis votre application, vous pouvez modifier le niveau de journalisation en fonction de vosinfo
besoinswarning
.