Trabajar con TLS en el SDK para JavaScript - AWS SDK for Java 2.x

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Trabajar con TLS en el SDK para JavaScript

AWS SDK for Java Utiliza las capacidades de TLS de su plataforma Java subyacente. En este tema, mostramos ejemplos del uso de la implementación de OpenJDK utilizada por Amazon Corretto 17.

Para que funcione Servicios de AWS, el JDK subyacente debe admitir una versión mínima de TLS 1.2, pero se recomienda TLS 1.3.

Los usuarios deben consultar la documentación de la plataforma Java que utilizan con el SDK para saber qué versiones de TLS están habilitadas de forma predeterminada y cómo habilitar y deshabilitar versiones específicas de TLS.

Cómo comprobar la información de la versión de TLS

Con OpenJDK, el código siguiente muestra el uso de SSLContext para imprimir qué versiones de TLS/SSL son compatibles.

System.out.println(Arrays.toString(SSLContext.getDefault().getSupportedSSLParameters().getProtocols()));

Por ejemplo, Amazon Corretto 17 (OpenJDK) produce el siguiente resultado.

[TLSv1.3, TLSv1.2, TLSv1.1, TLSv1, SSLv3, SSLv2Hello]

Para ver el protocolo de enlace SSL en acción y qué versión de TLS se utiliza, puede utilizar la propiedad del sistema javax.net.debug.

Por ejemplo, ejecute una aplicación Java que utilice TLS.

java app.jar -Djavax.net.debug=ssl:handshake

La aplicación registra el enlace SSL de forma similar a la siguiente.

... javax.net.ssl|DEBUG|10|main|2022-12-23 13:53:12.221 EST|ClientHello.java:641|Produced ClientHello handshake message ( "ClientHello": { "client version" : "TLSv1.2", ... javax.net.ssl|DEBUG|10|main|2022-12-23 13:53:12.295 EST|ServerHello.java:888|Consuming ServerHello handshake message ( "ServerHello": { "server version" : "TLSv1.2", ...

Aplicar una versión mínima de TLS

El SDK para Java siempre prefiere la última versión de TLS compatible con la plataforma y el servicio. Si desea aplicar una versión mínima específica de TLS, consulte la documentación de su plataforma Java.

Para las JVM basadas en OpenJDK, puede utilizar la propiedad del sistema jdk.tls.client.protocols.

Por ejemplo, si desea que los clientes del servicio SDK de su aplicación utilicen TLS 1.2, aunque TLS 1.3 esté disponible, proporcione la siguiente propiedad del sistema.

java app.jar -Djdk.tls.client.protocols=TLSv1.2

AWS Los puntos finales de la API se actualizan a TLS 1.2

Consulte esta entrada del blog para obtener información sobre la migración de los puntos finales de la AWS API a TLS 1.2 para obtener la versión mínima.