Uso de certificados de servidor de IAM
Para habilitar las conexiones HTTPS en su sitio web o aplicación en AWS, necesita un certificado de servidor SSL/TLS. Puede utilizar un certificado de servidor proporcionado por AWS Certificate Manager o uno que haya obtenido de un proveedor externo.
Le recomendamos que utilice ACM para aprovisionar, administrar e implementar los certificados de servidor. Con ACM puede solicitar un certificado, implementarlo en sus recursos de AWS y dejar que ACM se ocupe de renovar los certificados. Los certificados proporcionados por ACM son gratuitos. Para obtener más información sobre ACM, consulte la Guía del usuario de AWS Certificate Manager.
Obtener un certificado de servidor
Puede recuperar un certificado de servidor llamando al método getServerCertificate de IamClient, pasando un objeto GetServerCertificateRequest
Importaciones
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;
Código de
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); } }
Consulte el ejemplo completo
Elaborar listas de certificados de servidor
Para mostrar sus certificados de servidor, llame al método listServerCertificates de IamClient con un objeto ListServerCertificatesRequest
Llame al método serverCertificateMetadataList del objeto ListServerCertificateResponse devuelto para obtener una lista de objetos ServerCertificateMetadata
Los resultados pueden aparecer truncados; si el método ListServerCertificateResponse del objeto isTruncated devuelve true, llame al método ListServerCertificatesResponse del objeto marker y use el marcador para crear una nueva solicitud. Utilice la nueva solicitud para llamar de nuevo a listServerCertificates para obtener el siguiente lote de resultados.
Importaciones
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;
Código de
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); } }
Consulte el ejemplo completo
Actualizar un certificado de servidor
Puede actualizar el nombre o la ruta de un certificado de servidor llamando al método updateServerCertificate de IamClient. Este método toma un objeto UpdateServerCertificateRequest
Importaciones
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;
Código de
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); } }
Consulte el ejemplo completo
Eliminar un certificado de servidor
Para eliminar un certificado de servidor, llame al método deleteServerCertificate de IamClient con un objeto DeleteServerCertificateRequest
Importaciones
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;
Código de
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); } }
Consulte el ejemplo completo
Más información
-
Uso de certificados de servidor en la Guía del usuario de IAM
-
GetServerCertificate en la referencia de la API de IAM
-
ListServerCertificates en la referencia de la API de IAM
-
UpdateServerCertificate en la referencia de la API de IAM
-
DeleteServerCertificate en la referencia de la API de IAM