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!