`
DavisWang
  • 浏览: 52415 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

"PKIX path building failed"的问题分析

阅读更多

      在通过java程序访问https服务时常常会遇到下面的异常 Caused by: sun.security.validator.Va lidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

     原因分析:

     此异常是由于jre不能验证服务端的证书所致,归其原因有下面两种可能:

     1)服务端使用的是自签名证书或证书签发机构不是公认的权威机构。这种情况由于在\jre\lib\security\cacerts中找不到CA证书所以不能验证服务器返回证书的真实性。注通过命令 keytool -list -keystore cacerts 可查看cacerts中的可信CA。

     2)服务端使用的证书缺少中间证书即证书链不完整。这种情况通过浏览器访问一般是正常的,因为大部分浏览器会自动从证书签发机构下载中间证书,这样就可以补齐证书链,而java的security库并不会完成中间证书的下载,所以不能验证服务器返回证书的真实性。

    3)还有一种可能就是人为失误,服务器证书与中间证书或CA证书不匹配。这个只能是排除上面两种可能后本地验证证书链是否正确。

     解决方法:

     对于第一种情况需要把自签名的证书或缺少的CA证书导入到cacerts;对于第二种情况需要在服务端补齐证书链,具体操作方法参见:

     在nginx上配置证书链 https://scottlinux.com/2013/09/02/how-to-configure-ssl-certificate-chain-for-nginx/

     在F5上配置证书链 http://www.entrust.net/knowledge-base/technote.cfm?tn=8268 

分享到:
评论

相关推荐

    SSL.7z,解决PKIX path building failed 的问题

    PKIX path building failed 的问题。解决本地环境中报错 PKIX path building failed 的问题。 其中有产生证书的代码,将运行产生的证书放在文档中指定位置即可

    解决PKIX path building failed的问题

    标题中的“解决PKIX path building failed的问题”是一个关于网络安全和证书验证的常见错误,通常出现在Java应用程序中。当一个程序尝试通过HTTPS连接到一个服务器时,如果Java的信任存储(Truststore)不包含服务器...

    解决PKIX path building failed的问题的AbstractCasProtocolUrlBasedTicketValidator类

    CAS默认走https,需要安装证书,但是自定义的证书貌似得不到信任,报PKIX path building failed。则可以修改源码来屏蔽错误。

    PKIX path building failed

    sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

    PKIX path building failed解决java获取https的时遇到的证书问题

    ### PKIX Path Building Failed 解决Java获取HTTPS时遇到的证书问题 #### 一、问题概述 在使用Java程序访问HTTPS网站时,有时会遇到以下异常: ```plaintext javax.net.ssl.SSLHandshakeException: sun.security....

    验证证书unable to find valid certification path to requested target

    当在Java中使用URL.openConnection().connect()方法进行HTTPS请求时,如果遇到PKIX path building failed异常,通常意味着Java运行环境在验证服务器证书链时遇到了问题。具体错误信息sun.security.provider....

    关于IDEA2020.1新建项目maven PKIX 报错问题解决方法

    这个错误的主要原因是ValidatorException:PKIX path building failed : sun.security.provider.certpath.SunCertPathBuilderException : unable to find valid certification path to requested target。...

    InstallCert.java工具及使用方法.zip

    HTTP Status 500 - javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find ...

    Maven 环境搭建和ecplise配置

    Maven是一个强大的项目管理工具,它帮助Java开发者管理和构建项目,统一项目的构建过程,解决依赖管理问题。以下是如何在Windows环境下搭建Maven的基本步骤: 1. **下载Maven**:首先,你需要访问Apache Maven的...

    SELINUX的使用

    ### SELINUX与XORG的深度整合:安全加固的桌面系统 #### 引言 随着现代计算机系统的日益复杂,操作系统安全成为不可忽视的关键议题。SELinux(Security-Enhanced Linux),作为Linux内核的一个安全增强模块,通过...

    InstallCert.class

    解决 sun.security.validator.ValidatorException: PKIX path building failed生成证书的代码

    InstallCert.zip

    "InstallCert.zip"这个文件和其描述"mvn PKIX path building failed: 进行中央库授权, unable to find valid certification path to requested target"揭示了一个常见的问题:在使用Maven进行构建时,由于缺少信任...

    jssecacerts

    Java\jar 1.8.0_141\lib\ext\里面缺少了一个安全凭证jssecacerts证书文件,通过运行下面类可以生成证书,将生成的证书放在Java\jar 1.8.0_141\lib\ext\这个目录下,重启编译器就可以解决。

    PKIX_maven_archetype.rar

    二是尝试更新POM.xml中的JAR依赖时,出现“PKIX path building failed”的错误。 首先,我们来讨论Maven Archetype。Maven Archetype是Maven的一个插件,用于创建项目结构的模板。它允许开发者定义一个标准的项目...

    https解决SSLHandshakeException问题.zip

    本篇文章将深入探讨这个问题的原因以及如何通过代码解决。 首先,`SSLHandshakeException`通常表示在SSL/TLS握手过程中出现了错误,这个过程包括客户端和服务器之间的一系列交互,用于身份验证、协商加密算法和建立...

    InstallCert.jar

    解决jdk证书问题 生成jssecacerts PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilde... 具体操作可参考:https://blog.csdn.net/Asia1752/article/details/119675793

    Trusted Path Debugger:用于 PKIX 路径构建的 Java 调试器失败错误-开源

    在 Java 中,在进行 HTTPS 连接时,人们通常会遇到以下异常堆栈跟踪: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider....

    gradle-trust-all:一个用于禁用 SSL 证书验证的 gradle 插件

    PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 处理这种情况的常用 Java 方法是下载站点证书,将其导入...

    关于用javamail发送邮件时,由于邮件服务器要SSL,解决办法

    当邮件服务器需要自签名证书时,可能会出现“sun.security.validator.ValidatorException: PKIX path building failed”这样的错误。为了解决这个问题,我们可以使用`InstallCert.java`这个工具。这是一个简单的Java...

    java 发送https 请求 证书

    Java的TrustStore包含了系统信任的根证书,如果服务器的证书不在这个TrustStore中,Java会抛出“ sun.security.validator.ValidatorException: PKIX path building failed”这样的异常。以下是一些步骤来处理这个...

Global site tag (gtag.js) - Google Analytics