自2024年7月31日起, 适用于 Java 的 Amazon SDK 1.x已进入维护模式,并将于2025年12月31日end-of-support
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
适用于 Java 的 Amazon SDK 支持 TLS
以下信息仅适用于 Java SSL 实现(中的默认 SSL 实现 适用于 Java 的 Amazon SDK)。如果您使用的是其他 SSL 实现,请参阅与该特定 SSL 实现相关的信息,以了解如何强制执行 TLS 版本。
如何查看 TLS 版本
请查阅 Java 虚拟机 (JVM) 提供商的文档,以确定您的平台支持哪些 TLS 版本。对于某些人来说 JVMs,以下代码将打印支持哪些 SSL 版本。
System.out.println(Arrays.toString(SSLContext.getDefault().getSupportedSSLParameters().getProtocols()));
要查看 SSL 握手的运行情况以及使用的 TLS 版本,可使用系统属性 javax.net.debug。
java app.jar -Djavax.net.debug=ssl
注意
TLS 1.3 与适用于 Java 的 SDK 版本 1.9.5 至 1.10.31 不兼容。有关更多信息,请参阅以下博客文章。
强制实施最低 TLS 版本
SDK 始终会将平台和服务支持的最新 TLS 版本作为其首选。如果您希望强制指定特定的最低 TLS 版本,请查阅 JVM 的文档。对于基于 OpenJDK JVMs,您可以使用系统属性。jdk.tls.client.protocols
java app.jar -Djdk.tls.client.protocols=PROTOCOLS
有关支持的 PROTOCOLS 值,请参阅您的 JVM 文档。