Travailler avec des certificats IAM de serveur - AWS SDK for Java 2.x

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.

Travailler avec des certificats IAM de serveur

Pour activer les connexions HTTPS à votre site Web ou à votre application AWS, vous avez besoin d'un certificat de serveur SSL/TLS. Vous pouvez utiliser un certificat de serveur fourni par un fournisseur externe AWS Certificate Manager ou un certificat que vous avez obtenu auprès d'un fournisseur externe.

Nous vous recommandons de les utiliser ACM pour provisionner, gérer et déployer vos certificats de serveur. ACM Vous pouvez ainsi demander un certificat, le déployer sur vos AWS ressources et nous laisser ACM gérer le renouvellement des certificats pour vous. Les certificats fournis par ACM sont gratuits. Pour plus d'informations ACM, consultez le guide de AWS Certificate Manager l'utilisateur.

Obtenir un certificat de serveur

Vous pouvez récupérer un certificat de serveur en appelant la getServerCertificate méthode IamClient's et en GetServerCertificateRequestlui transmettant le nom du certificat.

Importations

import software.amazon.awssdk.services.iam.model.GetServerCertificateRequest; import software.amazon.awssdk.services.iam.model.GetServerCertificateResponse; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.iam.IamClient; import software.amazon.awssdk.services.iam.model.IamException;

Code

public static void getCertificate(IamClient iam,String certName ) { try { GetServerCertificateRequest request = GetServerCertificateRequest.builder() .serverCertificateName(certName) .build(); GetServerCertificateResponse response = iam.getServerCertificate(request); System.out.format("Successfully retrieved certificate with body %s", response.serverCertificate().certificateBody()); } catch (IamException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Consultez l'exemple complet sur GitHub.

Lister les certificats de serveur

Pour répertorier les certificats de votre serveur, appelez la listServerCertificates méthode IamClient's avec un ListServerCertificatesRequest. Elle renvoie un ListServerCertificatesResponse.

Appelez la serverCertificateMetadataList méthode de ListServerCertificateResponse l'objet renvoyé pour obtenir une liste d'ServerCertificateMetadataobjets que vous pouvez utiliser pour obtenir des informations sur chaque certificat.

Les résultats peuvent être tronqués. Si la méthode ListServerCertificateResponse de l'objet isTruncated renvoie true, appelez la méthode ListServerCertificatesResponse de l'objet marker et utilisez le marqueur pour créer une nouvelle demande. Utilisez la nouvelle demande pour appeler à nouveau listServerCertificates et obtenir le lot suivant de résultats.

Importations

import software.amazon.awssdk.services.iam.model.IamException; import software.amazon.awssdk.services.iam.model.ListServerCertificatesRequest; import software.amazon.awssdk.services.iam.model.ListServerCertificatesResponse; import software.amazon.awssdk.services.iam.model.ServerCertificateMetadata; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.iam.IamClient;

Code

public static void listCertificates(IamClient iam) { try { boolean done = false; String newMarker = null; while(!done) { ListServerCertificatesResponse response; if (newMarker == null) { ListServerCertificatesRequest request = ListServerCertificatesRequest.builder().build(); response = iam.listServerCertificates(request); } else { ListServerCertificatesRequest request = ListServerCertificatesRequest.builder() .marker(newMarker).build(); response = iam.listServerCertificates(request); } for(ServerCertificateMetadata metadata : response.serverCertificateMetadataList()) { System.out.printf("Retrieved server certificate %s", metadata.serverCertificateName()); } if(!response.isTruncated()) { done = true; } else { newMarker = response.marker(); } } } catch (IamException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Consultez l'exemple complet sur GitHub.

Mettre à jour un certificat de serveur

Vous pouvez mettre à jour le nom ou le chemin d'un certificat de serveur en appelant la updateServerCertificate méthode IamClient's. Il faut utiliser un ensemble d'UpdateServerCertificateRequestobjets portant le nom actuel du certificat de serveur et un nouveau nom ou un nouveau chemin.

Importations

import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.iam.IamClient; import software.amazon.awssdk.services.iam.model.IamException; import software.amazon.awssdk.services.iam.model.UpdateServerCertificateRequest; import software.amazon.awssdk.services.iam.model.UpdateServerCertificateResponse;

Code

public static void updateCertificate(IamClient iam, String curName, String newName) { try { UpdateServerCertificateRequest request = UpdateServerCertificateRequest.builder() .serverCertificateName(curName) .newServerCertificateName(newName) .build(); UpdateServerCertificateResponse response = iam.updateServerCertificate(request); System.out.printf("Successfully updated server certificate to name %s", newName); } catch (IamException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Consultez l'exemple complet sur GitHub.

Supprimer un certificat de serveur

Pour supprimer un certificat de serveur, appelez la deleteServerCertificate méthode IamClient's avec un DeleteServerCertificateRequestcontenant le nom du certificat.

Importations

import software.amazon.awssdk.services.iam.model.DeleteServerCertificateRequest; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.iam.IamClient; import software.amazon.awssdk.services.iam.model.IamException;

Code

public static void deleteCert(IamClient iam,String certName ) { try { DeleteServerCertificateRequest request = DeleteServerCertificateRequest.builder() .serverCertificateName(certName) .build(); iam.deleteServerCertificate(request); System.out.println("Successfully deleted server certificate " + certName); } catch (IamException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }

Consultez l'exemple complet sur GitHub.

En savoir plus