我有使用X.509證書進行安全保護的遠程Web服務。
我生成的Web服務客戶端的東西(使用jax-ws),但需要配置,如果證書的使用。
我該如何繼續?
我想我應該在我的本地信任密鑰庫登記證書,並將其設置是這樣的:X.509安全網絡服務的Java客戶端
System.setProperty("javax.net.ssl.keyStore", keyStore);
System.setProperty("javax.net.ssl.keyStoreType", "JKS");
System.setProperty("javax.net.ssl.keyStorePassword", keyStorePassword);
System.setProperty("javax.net.ssl.trustStore", trustStore);
System.setProperty("javax.net.ssl.trustStoreType", "JKS");
System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword);
但目前尚不清楚哪些數據應作爲參數來提供。
請幫忙。
謝謝。
只需添加@sstendal所說的內容,trustStore和keystore就是包含您的可信證書和私鑰的物理文件。您的密鑰庫理想情況下應該包含您的私鑰,並且證書應該存放在您的信任庫中。您需要信任庫中的根證書頒發機構(CA--認可服務器證書的實體;例如Verisign)證書,以便完成SSL握手。 – Drona
謝謝@sstendal你的答案。你描述的東西現在很清楚。你是否也可以指示我如何組織整個過程,因爲我擁有的只是這種格式的證書:'MIICGDCCAYWgAwIBAgIQMYx/1mo3y4RDkMC7Pf6tITAJBgUrDgMCHQUAMCIxIDAeBgNVBAMTF1JhZGlvT3B0IERldmVsb3B ......'我的意思是,我應該向密鑰庫添加什麼?如果我只想調用遠程WS,我應該將它添加到密鑰庫和信任庫嗎? – kardanov
它看起來像你有一個base64編碼證書。您可以按照此處的說明創建pem文件:http://www.herongyang.com/Cryptography/Certificate-Format-PEM-on-Certificates.html。您應該使用keytool將其導入密鑰庫,如下所述:http://www.herongyang.com/Cryptography/Certificate-Format-keytool-Import-in-DER-and-PEM.html。 – sstendal