2016-12-02 83 views
2

作爲一個客戶端,我想創建一個到Java中的URL(SOAP端點)的TLS1.2連接。在Java中創建一個到http服務器的TLS1.2連接

我已經爲該文件提供了PFX文件和密碼。

我不確定是否需要將PFX文件導入到信任庫或密鑰庫以及如何執行此操作?

代碼看起來像創建連接的代碼是什麼?

這個問題是相似的,但並沒有解決如何讓PFX文件到Java的關鍵系統:

Java HttpsURLConnection and TLS 1.2

我也成功地管理運行:

keytool -importkeystore -srckeystore client.pfx -srcstorestype pkcs12 
-destkeystore clientcert.jks -deststoretype jks 

其中有做了一個clientcert.jks

最終我會與服務器做互相TLS,但作爲一個起點解答這些問題將會有所幫助。

我也有服務器證書。

+0

所以你已經準備好了你的密鑰存儲。爲什麼從PKCS#12轉換到Java密鑰存儲類型對我來說還不清楚(無論如何,Java都傾向於使用PKCS#12)。現在,您必須設置您的信任庫,除非服務器證書由於已由現有的受信任的CA頒發而已被信任。因此,請去配置您的連接。 –

+0

因此,我將服務器證書添加到信任存儲?客戶端證書的代碼是什麼樣的? –

+0

我已成功地從PFX添加公證書到cacerts中與這個應答文件: http://stackoverflow.com/questions/15964797/unable-to-import-p12-certificate-to-cacerts 現在我需要一段代碼片段來向我展示如何使用帶有此證書的URLConnection來連接到URL。 我想我還需要從網站上下載公鑰文件以在網站上使用mtls。 –

回答

0

如果您已經過去加載密鑰庫,您可以查看此article,其中描述瞭如何在URL連接上設置SSL上下文。