通过之前生产上发现的问题总结得出以下结论:

 问题现象就是:由F5 进行分发到cas 两个服务端 导致 客户端访问时  (时好时坏的现象 ) 通过在服务端的查看apahce 的访问日志得出的结论

 发现其中有一台apache 一直都没有访问日志发现的

 由于使用weblogic 12c 和 cas3.5 版本 最大问题在于 cas 服务端的两台机器生成的证书不规范 两个证书的生成时间有时间差

 这个可以通过浏览器查看证书的基本信息可得;重点是weblogic 12c 高版本对证书的要求性比较高 所以会报错、低版本的weblogic 不会存在证书验证

 不通过的问题 

1、CAS 证书 分为 HTTP 和HTTPS 两种访问方式 (HTTP 模式 不需要JDK 证书直接可以访问,而HTTPS 模式需要JDK 证书的支持)。

2、如果JDK 中的jre/lib/security 目录下的密钥文件 cacerts 没有访问权限的话也是报错的。

3、如果在应用程序访问的JDK 不是你所导入证书的JDK的话也会出现证书的错误。

4、目前还有一种情况是当jdk 中存在证书时,且以上的情况都满足的时候还出现如下错误暂时还没有解决

以下是应用程序CAS报错信息:

edu.yale.its.tp.cas.util.SecureURL -ST票据验证异常,e:class javax.net.ssl.SSLHandshakeException

                                                         ST票据验证异常

javax.net.ssl.SSLHandshakeException:General SSLEngine problem

javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:

PKIX path validation failed:java.security.cert.CertPathValidatorException: signature check failed

edu.yale.its.tp.cas.client.CASAuthenticationException: Unable to validate ProxyTicketValidator [[edu.yale.its.tp.cas.client.ProxyTicketValidator proxyList=[null] [edu.yale.its.tp.cas.client.ServiceTicketValidator casValidateUrl=[https://cas.hundsun.com:8443/cas/serviceValidate] ticket=[ST-73-gicvl1BIeG9b5LdPWBFz-cas] service=[http%3A%2F%2Flocalhost%3A8086%2FCasTest%2Findex.jsp] renew=false]]]

方法一:使用keytool手动导入证书,为JRE环境导入信任证书

摘自:http://www.cnblogs.com/wanghaixing/p/5630070.html

方法二:使用代码下载证书保存

摘自:https://blog.csdn.net/frankcheng5143/article/details/52164939

方法三:服务器不信任我们自己创建的证书,所以在代码中忽略证书信任问题。

CAS JDK 证书错误学习笔记的更多相关文章

  1. JDK源码学习笔记——LinkedHashMap

    HashMap有一个问题,就是迭代HashMap的顺序并不是HashMap放置的顺序,也就是无序. LinkedHashMap保证了元素迭代的顺序.该迭代顺序可以是插入顺序或者是访问顺序.通过维护一个 ...

  2. 《JDK 8.0 学习笔记》1~3章

    第一章 Java平台概论 了解Java的发展历程和相关术语如JDK.JVM.JRE等 第二章 从JDK到IDE 书本介绍了新建Java程序的注意事项以及在cmd和Eclipse环境下如何运行Java, ...

  3. JDK源码学习笔记——String

    1.学习jdk源码,从以下几个方面入手: 类定义(继承,实现接口等) 全局变量 方法 内部类 2.hashCode private int hash; public int hashCode() { ...

  4. JDK源码学习笔记——Integer

    一.类定义 public final class Integer extends Number implements Comparable<Integer> 二.属性 private fi ...

  5. JDK源码学习笔记——Enum枚举使用及原理

    一.为什么使用枚举 什么时候应该使用枚举呢?每当需要一组固定的常量的时候,如一周的天数.一年四季等.或者是在我们编译前就知道其包含的所有值的集合. 利用 public final static 完全可 ...

  6. Jmeter+JDK的安装学习笔记

    第一步:首先从jmeter的官网下载jmeter,目前最新版本为3.3,支持的JDK最高为1.8 下载地址: jmeter:http://jmeter.apache.org/download_jmet ...

  7. JDK源码学习笔记——HashMap

    Java集合的学习先理清数据结构: 一.属性 //哈希桶,存放链表. 长度是2的N次方,或者初始化时为0. transient Node<K,V>[] table; //最大容量 2的30 ...

  8. JDK源码学习笔记——Iterable/Iterator实现原理

    Collection接口继承java.lang.Iterable接口,集合类重写了iterator()方法 public interface Iterable<T> { Iterator& ...

  9. JDK源码学习笔记——Object

    一.源码解析 public class Object { /** * 一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用 */ private static native void ...

随机推荐

  1. es6语法图片切换demo

    git@github.com:qq719862911/ImageDemo.git

  2. Linux:lvm磁盘分区,动态扩容

    一.lvm磁盘分区: 1,查看新增的磁盘,需要使用root权限 fdisk -l 看到有一个新增的100G磁盘 2,对磁盘进行分区 fdisk /dev/xvdb 1,输入:n 表示创建一个新的分区( ...

  3. 6-2 shell编程基础

    shell编程基础 编程基础 Linus:Talk is cheap, show me the code 程序和编程风格 程序: 程序:算法+数据结构 数据:是程序的核心 算法:处理数据的方式 数据结 ...

  4. 【POJ - 3126】Prime Path(bfs)

    Prime Path 原文是English 这里直接上中文了 Descriptions: 给你两个四位的素数a,b.a可以改变某一位上的数字变成c,但只有当c也是四位的素数时才能进行这种改变.请你计算 ...

  5. 8.X版本的node打包时,gulp命令报错 require.extensions.hasownproperty

    版本不兼容的问题,低版本的gulp只能在低版本的node上执行. 修改一下node-modules/require-dir/index.js的97行代码即可,如下:

  6. ubuntu18.04 开机自动启动脚本的坑

    哇 这个真的难受 找了半天的方案不能用 自暴自弃用的图形界面设置

  7. excel库中数据下载

    PHP实现EXCEL下载数据 <?php include("Classes/PHPExcel.php"); $exce=new PHPExcel(); $exce->s ...

  8. vscode 插件 配置

    第一页 第二页 第三页 settings.json配置 { "editor.fontSize": 20, "files.autoSave": "off ...

  9. macOS Sierra 如何安装任何来源的软件

    为了安全性考虑,macos是要手动勾选来自任何来源的选项才可以安装第三方应用软件,系统升级后,在新的系统中这一项是默认不显示的,如果想要出现和这一勾选选项,可以从终端中输入 sudo spctl -- ...

  10. jsp页面中使用 splitfn:split注意事项

    我们有一个 字段存储内容是  xxxx意见~~@~~是 在页面上需要分开显示,格式为 xxx意见 是 使用 ${fn:split(comments, '~~@~~')[1]} 来分割是发现出现@符文字 ...