2011-04-20 119 views
1

我的应用程序需要与多个安全服务器通信。多个证书导入问题

我使用密钥工具导入证书。

证书导入步骤:

keytool -import -keystore aaa.jks -file aaa.co.uk.cer 

keytool -import -keystore bbb.jks -file bbb.co.uk.cer 

它正常工作与一个证书,但只要我导入第二个证书上一个停止工作。

错误:

Exception:javax.naming.CommunicationException: 
simple bind failed: aaa.co.uk:636 
[Root exception is javax.net.ssl.SSLHandshakeException: 
sun.security.validator.ValidatorException: PKIX path building failed: 
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 

我也试过下列步骤,但它仍然是失败的:

keytool -import -keystore aaa.jks -alias ms -file aaa.co.uk.cer 

keytool -import -alias ms -file bbb.co.uk.cer 

我想我应该是附加在一个密钥库中的证书,但不知道该怎么办它。

任何想法如何做到这一点还是我失去了一些东西?

ENV:Java 1.6的
应用服务器:Glassfish的

回答

1

也许你导入这两个证书,以相同的别名?

告诉我们keytool您正在使用的命令行以及第二次导入后的“停止工作”。

+0

@BN - thx您的建议。我已经尝试过,但它不工作,除非我使用错误的方式? Plz看到更新的问题。 – JSS 2011-04-20 13:18:35

+0

@BN thx建议。 – JSS 2011-04-20 13:44:55

2

感谢@BertNase的建议。

以下导入命令有固定的问题:

keytool -import -keystore myStore.jks -alias aliasA -file aaa.co.uk.cer 
keytool -import -keystore myStore.jks -alias aliasB -file bbb.co.uk.cer 

现在,该命令将导入两个证书在同一密钥库