`p12`文件在firefox restclient中工作,但在WebSphere中不起作用



我有一个在WebSphere中运行的Java Web应用程序,需要致电第三方服务(IBM(以获取一些响应。

首先,IBM给我一个p12文件,该文件包含客户端证书,然后在Firefox RestClient中对其进行测试,CALL Success,我在RestClient中获得了响应代码200。否则,我将被禁止403。因此,这证明了第三方提供的p12是正确的。如果我的陈述错了,请纠正我。

因此,我很乐意将此p12文件导入到我的CellDefaultKeystore中,以测试应用程序上的连接。不幸的是,在我导入该p12文件后,节点状态变为"未知",我什至无法"同步"它们。当我检查服务器日志时,我一直看到

com.ibm.jsse2.util.j: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is: 
    java.security.cert.CertPathValidatorException: The certificate issued by xxx is not trusted; internal cause is: 
    java.security.cert.CertPathValidatorException: Certificate chaining error

之后,我将其从CellDefaultKeyStore中删除,尝试将其导入NodeDefaultKeyStore,节点问题消失,节点可以同步,我的应用程序可以成功地致电第三方。我认为这是今天我的工作完成的,但是,该解决方案不稳定,它唯一起作用,并非每次。片刻后,节点状态仍然会变成"未知",或者,如果我运行./stopManager.sh./startManager.sh,节点问题将立即返回。

我尝试过运行./stopNode.sh./startNode.sh,在此2 Shell脚本的日志中没有错误。但是is Console UI仍然显示状态是unknown,我什至无法停止启动我的服务器是控制台。

首先,我认为它可能是显示问题,但是如果我从NodeDefaultKeyStore删除p12文件,此问题将解决。

我尝试使用Google,但最终仍然找不到任何线索。我不确定是我的配置还是有问题的p12文件。

我应该参考哪个日志查看为什么节点状态将成为 unknown,否则我还能继续对此进行调试/故障排除?

您收到了外部服务的证书,并且您希望WebSphere中的代码可以连接到该服务吗?默认的单元格商店不是放置外部连接证书的地方。

将其放在受信任的密钥库中。这将告诉WebSphere相信外部连接证书,使您的代码可以连接到它。

您可以通过控制台或直接在文件上使用iKeyman进行操作。

话虽如此,请不要与默认密钥库中的默认证书混乱。@dbreaux在评论中是正确的。

相关内容

  • 没有找到相关文章

最新更新