在Java中以编程方式安装PFX
我已经使用OpenSSL命令行生成了一些证书。在生成的一批证书中,我在服务器上手动安装了PFX,以便启用对我的网站的HTTPS调用。PFX是使用以下命令生成的-在Java中以编程方式安装PFX,java,ssl,certificate,ssl-certificate,Java,Ssl,Certificate,Ssl Certificate,我已经使用OpenSSL命令行生成了一些证书。在生成的一批证书中,我在服务器上手动安装了PFX,以便启用对我的网站的HTTPS调用。PFX是使用以下命令生成的- openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.pfx 我通过右键单击并“安装证书”(不带密码)在服务器上安装了它 我希望通过Java代码实现这一点。我试着使用Java键工具- keytool -importkeystore -srckeystore "C:\ca.pfx
openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.pfx
我通过右键单击并“安装证书”(不带密码)在服务器上安装了它
我希望通过Java代码实现这一点。我试着使用Java键工具-
keytool -importkeystore -srckeystore "C:\ca.pfx" -srcstoretype pkcs12 -destkeystore clientcert.jks -deststoretype JKS
这会提示我输入目标密码和密钥库密码,如果不提供密码,则不会成功
1) 这是在服务器上安装PFX的正确方法吗。i、 e.这将把证书添加到密钥库(java安装的Jre位置),而不是windows当前用户证书(mmc->文件->添加/删除管理单元->证书->我的用户帐户->个人->证书)
2) 是否有更好的方法使用Java安装PFX 如果您使用的是像Tomcat/Wildfly这样的Java应用程序服务器,他们可以直接使用PKCS12密钥存储,而无需转换为JKS。直接存储PKCS12将与将PFX安装到当前用户证书相同?目前还不清楚您当前的设置是什么:您使用的是具有相互身份验证的HTTPS应用程序服务器,以及“当前用户证书”的含义。您是在设置客户端还是服务器端?我正在设置服务器端,安装由ca.crt(自签名根证书)生成的ca.pfx。我按照通常的窗口步骤进行安装,它反映在当前用户证书(服务器上)中。反过来,此证书可从浏览器获得,用于Apache上托管的我的应用程序的https调用。请原谅我的无知。。。“编程”部分在哪里?您只显示了命令。应该有一些附带的代码。