簡體   English   中英

卷曲cacert到Java HttpClient等價物

[英]Curl cacert to Java HttpClient equivalent

我想知道我是否能夠使用curl建立連接,如下面的命令,

curl --cacert some.pem https://someurl.com/resource

如何將其轉換為httpclient代碼? 我知道我需要轉換pem文件並創建一個新的密鑰庫等等。但是所有這些openssl,keytool命令,密鑰庫,信任庫讓我感到困惑,我不知道使用哪個以及使用哪個順序。

您需要從PEM文件創建一個密鑰庫(您將用作信任庫)。 這可以如下完成。

keytool -import -file cacert.pem -alias myca -keystore truststore.jks

然后,您需要將此密鑰庫用作信任庫。

如果您只想為特定連接執行此操作,則應遵循此答案

如果你想為你的應用程序的所有連接做到這一點(或至少是那些沒有更改默認的),你可以使用javax.net.ssl.trustStore (以及相關的)系統屬性(見的自定義部分JSSE參考指南 )。 如果要對整個應用程序執行此操作,則問題是不會包含默認的受信任CA. 一個簡單的方法是制作與JRE捆綁在一起的cacerts文件的副本,並將其用作truststore.jks的起點。

或者,您可以將證書直接導入到全局cacerts文件中,但這將使該證書在此JRE上運行的所有應用程序上默認受信任。

(您還可以在此答案中找到有關密鑰庫和信任庫之間區別的更多信息。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM