我有一个webstart应用程序,我想在连接到服务器时执行客户端身份验证。我创建了使用certmgr.exe安装的pkcs12证书,并且它工作正常。 我想为使用该应用程序的每个客户端执行操作。我应该怎么做?如果我分发证书SSL证书错误
我得到一个bad_certificate错误。我知道证书没有问题,因为如果您使用浏览器安装证书,它就会起作用。
我创造了使用公钥
keytool -export -alias myKey -keystore abc.p12" -storetype PKCS12 -storepass mypassword -rfc -file abc.cer
然后我采用进口此文件到我的服务器的密钥库进行相互验证:
的keytool -import -v -file abc.cer -keystore C:\ apache-tomcat-7.0.26 \ tomcat.keystore“-storepass mypassword
之后,如果我在certmgr中安装了abc.p12证书,它工作正常。
为了能够从Java做到这一点,我需要一个信任库。我创建了一个信任,我导入使用
>keytool -import -keystore client-truststore.jks -file abc.cer
如果我尝试访问使用
-Djavax.net.ssl.keyStore=abc.p12 -Djavax.net.ssl.keyStorePassword=mypassword -Djavax.net.ssl.trustStore=trustore.jks -Djavax.net.ssl.trustStorePassword=mypassword
我不知道如果我做了正确的事情,服务器的公钥。请让我知道你在想什么。
我该怎么做?请让我知道你的建议。
这是我导入证书的tomcat的TrustStorefile。 keytool -import -v -file abc.cer -keystore C:\ apache-tomcat-7.0.26 \ tomcat.keystore“-storepass mypassword – ab3421