Rumah >Java >javaTutorial >Bagaimanakah Saya Mengkonfigurasi Sijil Pelanggan Java untuk Sambungan HTTPS Selamat?

Bagaimanakah Saya Mengkonfigurasi Sijil Pelanggan Java untuk Sambungan HTTPS Selamat?

Linda Hamilton
Linda Hamiltonasal
2024-12-07 12:48:14491semak imbas

How Do I Configure Java Client Certificates for Secure HTTPS Connections?

Sijil Pelanggan Java untuk Sambungan HTTPS/SSL

Dalam Java 6, mencipta sambungan HTTPS menggunakan sijil klien melibatkan proses dua kali ganda: mengimport sijil akar yang ditandatangani sendiri oleh pelayan ke kedai amanah dan menyatakan sijil pelanggan dan maklumat stor kunci melalui sistem properties.

Mengimport Sijil Root Server

Sijil akar yang ditandatangani sendiri mesti diimport ke kedai amanah. Ini boleh dicapai menggunakan arahan:

keytool -import -alias gridserver -file gridserver.crt -storepass $PASS -keystore gridserver.keystore

Menentukan Maklumat Sijil Pelanggan

Untuk menggunakan sijil pelanggan, sifat sistem berikut perlu ditetapkan:

-Djavax.net.ssl.keyStoreType=pkcs12
-Djavax.net.ssl.trustStoreType=jks
-Djavax.net.ssl.keyStore=clientcertificate.p12
-Djavax.net.ssl.trustStore=gridserver.keystore
-Djavax.net.debug=ssl # for verbose debugging
-Djavax.net.ssl.keyStorePassword=$PASS
-Djavax.net.ssl.trustStorePassword=$PASS

Kod Contoh

Sampel kod berikut menunjukkan menggunakan sijil pelanggan untuk sambungan HTTPS:

SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
URL url = new URL("https://gridserver:3049/cgi-bin/ls.py");
HttpsURLConnection conn = (HttpsURLConnection)url.openConnection();
conn.setSSLSocketFactory(sslsocketfactory);
InputStream inputstream = conn.getInputStream();
InputStreamReader inputstreamreader = new InputStreamReader(inputstream);
BufferedReader bufferedreader = new BufferedReader(inputstreamreader);

String string = null;
while ((string = bufferedreader.readLine()) != null) {
    System.out.println("Received " + string);
}

Dengan mengimport sijil akar pelayan ke kedai amanah dan menentukan maklumat sijil pelanggan yang diperlukan, Java boleh berjaya mewujudkan sambungan HTTPS dengan sijil pelanggan.

Atas ialah kandungan terperinci Bagaimanakah Saya Mengkonfigurasi Sijil Pelanggan Java untuk Sambungan HTTPS Selamat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn