SSLHandshakeException 无法验证用户身份

Posted

技术标签:

【中文标题】SSLHandshakeException 无法验证用户身份【英文标题】:SSLHandshakeException cannot authenticate user 【发布时间】:2015-06-20 04:41:16 【问题描述】:

我在启动应用程序时收到此错误。

 org.jboss.mq.SpyJMSException: Cannot authenticate user; - nested throwable: (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)
org.jboss.mq.SpyJMSException: Cannot authenticate user; - nested throwable: (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)

我通过System.setProperty("javax.net.ssl.trustStore", "Path to certificate).. 设置我的证书路径

但这对我不起作用..而且我已将证书导入 Java Home 的“cacerts”。但我仍然收到错误..

如有任何帮助,将不胜感激......

【问题讨论】:

【参考方案1】:

对用户进行身份验证的应用程序将 Java 密钥库作为其信任库。信任库必须包含(作为受信任的证书)签署用户证书的证书颁发机构。将证书颁发机构放在 base-64 ca.cer 文件中并使用keytool -import -keystore YourKeystore -alias ca -file ca.cer -trustcacerts

【讨论】:

以上是关于SSLHandshakeException 无法验证用户身份的主要内容,如果未能解决你的问题,请参考以下文章

无法下载站点地图:SSLHandshakeException:收到致命警报:handshake_failure

SSLHandshakeException:PKIX 路径构建失败 SunCertPathBuilderException:无法找到请求目标的有效证书路径

certificatePinner 无法使用 okhttp 抛出 SSLHandshakeException:CertPathValidatorException 未找到证书路径的信任锚

为啥 Java 在最新的 JDK 更新后无法连接到 MySQL 5.7,应该如何解决? (ssl.SSLHandshakeException:没有适当的协议)

无法通过 java 代码连接到服务器。获取 javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure

JDK 1.5 SSLHandshakeException