首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSL证书错误

SSL证书错误
EN

Stack Overflow用户
提问于 2012-10-10 23:14:02
回答 2查看 2.4K关注 0票数 1

我有一个webstart应用程序,我希望在连接到服务器时进行客户端身份验证。我已经创建了使用certmgr.exe安装的pkcs12证书,它工作得很好。我希望为使用该应用程序的每个客户端执行此操作。我该怎么做呢?如果我分发证书

我得到一个bad_certificate错误。我知道证书没有问题,因为如果您使用浏览器安装证书,它将会工作。

我使用以下命令创建了公钥

keytool -export -alias myKey -keystore abc.p12" -storetype PKCS12 -storepass mypassword -rfc -file abc.cer

然后,我将此文件导入到服务器的keystore中,以便使用以下命令进行相互身份验证:

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

我不确定我这样做是不是对的。请让我知道你的想法。

我应该做些什么?请让我知道你的建议。

EN

回答 2

Stack Overflow用户

发布于 2012-10-12 20:55:30

您应该将其导入到服务器的信任存储区,而不是其密钥库。

票数 1
EN

Stack Overflow用户

发布于 2014-01-16 02:24:17

您必须将证书导入到证书文件中,在JDK中是cacerts文件。在此之后,您必须查看证书是否存在于文件中,并且您将在每个客户端上执行此操作。

关于信任存储的事情是您创建自己的JKS文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12822747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档