如何在Mac上将SSL certifcate .pem文件导入JRE cacerts文件?

时间:2018-11-29 17:53:27

标签: java macos https ssl-certificate keystore

我尝试使用::struct::matrix Mtrx Mtrx add columns [llength [$SQLResultSet columns]] while {[$SQLResultSet nextlist Return_Row]} { ::csv::split2matrix Mtrx [::csv::join $Return_Row] {,} {expand auto} } ,但收到一条错误消息,指出我的.pem文件不是x509证书。我认为这是因为我的.pem文件格式不正确,或者因为它同时包含私钥和证书。有什么建议么?我的.pem文件如下所示:

keytool -importcert -alias (my cert alias) -file (cert file path.pem) -keystore (jre keystore path)

3 个答案:

答案 0 :(得分:1)

看看here,因为您的文件包含对Microsoft的引用,所以我建议确保文件使用Unix行尾(\n)而不是Windows行尾(\r\n

答案 1 :(得分:0)

不幸的是,我无法将证书导入到我的cacerts文件中,但是我能够配置CloseableHttpClient,以便它将使用没有“有效”证书的HTTPS URL。我只是在实现客户端时使用了以下代码:

ViewContext.HttpContext.Request

我知道这不是处理这种情况的正确方法,但是我不关心在这种特定情况下从与之通信的服务器验证证书。

答案 2 :(得分:0)

我终于能够将证书导入到我的JRE cacerts文件中。首先,我必须仅使用证书创建一个新的.pem文件:

-----BEGIN CERTIFICATE-----
MIIHQzCCBiugAwIBAgIQDEtIx...
-----END CERTIFICATE-----

然后我必须将cacerts文件复制到新位置,然后运行以下代码将其导入:

keytool -import -v -trustcacerts -alias serveralias -file /Applications/certificate.pem -keystore /cacerts

导入证书后,我将新的cacerts文件复制回JRE安全文件夹,并成功!