当前位置: 首页 > ops >正文

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 

http://www.xdnf.cn/news/11491.html

相关文章:

  • 各种软件版本号扫盲——Beta RC Preview release等
  • 倒计时 7 天 | 立即加入 GDE 成长计划,飞跃成为谷歌开发者专家
  • 机器学习-各分类模型优缺点(持续更新)
  • DVD转RMVB及DVD转AVI相关教程
  • Objective-C 编程语言官网文档(一)-简介
  • 看程序员如何给女朋友解释什么是锟斤拷?
  • 同一个局域网下访问电脑本地的localhost网址
  • 什么是网口温湿度传感器?什么是以太网温湿度传感器?
  • KVM+GFS分布式存储系统构建KVM高可用
  • python基础,黑马最新配套视频笔记
  • 气体管道管径及流量对照表_De、DN、D、d怎么搞懂他们?附管径与阀门通径对照表...
  • Android4.0 SDK新功能详解
  • MyEclipse 7.0下载 + 汉化 + doc汉化
  • 手机游戏无障碍设计——猜地鼠之Android篇
  • 从0到1手把手教你搭建个人博客
  • 油动无人机的优点有哪些?油动多旋翼无人机的优缺点及前景分析
  • 实践是检验真理的唯一标准!!交换机VLAN相关配置案例!
  • 腾讯应用宝Android 应用加固(乐固)操作说明(转)
  • 光盘如何重装系统教程
  • 个人怎么申请支付接口平台(教程)
  • 基于微信小程序的智能停车场管理系统的设计与实现
  • 推荐几款2024年最新开源API测试工具!
  • HTTP代理神器Fiddler
  • 三种经典“返回顶部”效果的代码
  • Web安全 EmpireCMS漏洞常见漏洞分析及复现(1)
  • vue项目main.js使用方法
  • XMLHttpRequest读取xml乱码及请求封装
  • onmouseover、onmouseenter、onmouseleave、onmouseout的区别
  • 2022年起重机械安全管理复训题库模拟考试平台操作
  • 稳定状态模型 (三):Volterra 模型