Bekerja dengan TLS di SDK untuk Java - AWS SDK for Java 2.x

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Bekerja dengan TLS di SDK untuk Java

AWS SDK for Java Menggunakan TLS kemampuan platform Java yang mendasarinya. Dalam topik ini, kami menunjukkan contoh menggunakan JDK implementasi Terbuka yang digunakan oleh Amazon Corretto 17.

Untuk bekerja dengan Layanan AWS, yang mendasari JDK harus mendukung versi minimum TLS 1.2, tetapi TLS 1.3 direkomendasikan.

Pengguna harus berkonsultasi dengan dokumentasi platform Java yang mereka gunakan SDK untuk mengetahui TLS versi mana yang diaktifkan secara default serta cara mengaktifkan dan menonaktifkan TLS versi tertentu.

Cara memeriksa informasi TLS versi

Menggunakan OpenJDK, kode berikut menunjukkan penggunaan SSLContextuntuk mencetakTLS/SSLversi mana yang didukung.

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

Misalnya, Amazon Corretto 17 (JDKTerbuka) menghasilkan output berikut.

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

Untuk melihat SSL jabat tangan dalam tindakan dan versi apa yang TLS digunakan, Anda dapat menggunakan properti sistem javax.net.debug.

Misalnya, jalankan aplikasi Java yang menggunakanTLS.

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

Aplikasi mencatat SSL jabat tangan yang mirip dengan yang berikut ini.

... 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", ...

Menegakkan versi minimum TLS

The SDK for Java selalu lebih memilih TLS versi terbaru yang didukung oleh platform dan layanan. Jika Anda ingin menerapkan TLS versi minimum tertentu, lihat dokumentasi platform Java Anda.

Untuk Open JDK basedJVMs, Anda dapat menggunakan properti sistemjdk.tls.client.protocols.

Misalnya, jika Anda ingin klien SDK layanan dalam aplikasi Anda menggunakan TLS 1.2, meskipun TLS 1.3 tersedia, berikan properti sistem berikut.

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

AWS APIendpoint upgrade ke 1.2 TLS

Lihat posting blog ini untuk informasi tentang AWS API titik akhir yang pindah ke TLS 1.2 untuk versi minimum.