CAS JDK 证书错误学习笔记
通过之前生产上发现的问题总结得出以下结论:
问题现象就是:由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 证书错误学习笔记的更多相关文章
- JDK源码学习笔记——LinkedHashMap
HashMap有一个问题,就是迭代HashMap的顺序并不是HashMap放置的顺序,也就是无序. LinkedHashMap保证了元素迭代的顺序.该迭代顺序可以是插入顺序或者是访问顺序.通过维护一个 ...
- 《JDK 8.0 学习笔记》1~3章
第一章 Java平台概论 了解Java的发展历程和相关术语如JDK.JVM.JRE等 第二章 从JDK到IDE 书本介绍了新建Java程序的注意事项以及在cmd和Eclipse环境下如何运行Java, ...
- JDK源码学习笔记——String
1.学习jdk源码,从以下几个方面入手: 类定义(继承,实现接口等) 全局变量 方法 内部类 2.hashCode private int hash; public int hashCode() { ...
- JDK源码学习笔记——Integer
一.类定义 public final class Integer extends Number implements Comparable<Integer> 二.属性 private fi ...
- JDK源码学习笔记——Enum枚举使用及原理
一.为什么使用枚举 什么时候应该使用枚举呢?每当需要一组固定的常量的时候,如一周的天数.一年四季等.或者是在我们编译前就知道其包含的所有值的集合. 利用 public final static 完全可 ...
- Jmeter+JDK的安装学习笔记
第一步:首先从jmeter的官网下载jmeter,目前最新版本为3.3,支持的JDK最高为1.8 下载地址: jmeter:http://jmeter.apache.org/download_jmet ...
- JDK源码学习笔记——HashMap
Java集合的学习先理清数据结构: 一.属性 //哈希桶,存放链表. 长度是2的N次方,或者初始化时为0. transient Node<K,V>[] table; //最大容量 2的30 ...
- JDK源码学习笔记——Iterable/Iterator实现原理
Collection接口继承java.lang.Iterable接口,集合类重写了iterator()方法 public interface Iterable<T> { Iterator& ...
- JDK源码学习笔记——Object
一.源码解析 public class Object { /** * 一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用 */ private static native void ...
随机推荐
- spring boot 整合redis
spring boot 中配置redis1 在pom.xml中增加相关包依赖:<dependency> <groupId>org.springframework.boot< ...
- 【URL 的编码、解码】
工具类 /** * URLEncodeTest.java * weixinTest * * Function: TODO * * ver date author * ───────────────── ...
- 【Linux】【四】linux 删除文件
1.rm -f * 删除当前目录下的文件 application/file/test/tools/logs/ #最经典的方法,删除当前目录下的所有类型的文件 2.rm -rf /ro ...
- gitlab 数据目录迁移
一般情况下,采用gitlab作为版本管理工具,内网环境需要搭建gitlab服务器,安装好gitlab应用之后,就开始使用,但是随着时间的推移,发现gitlab的repository会越来越大.一般,从 ...
- python-爬虫-selenium和phantomJs
1.selenum:三方库.可以实现让浏览器完成自动化的操作. 2.环境搭建 2.1 安装:pip install selenium 2.2 获取浏览器的驱动程序 下载地址: http://chrom ...
- 【AMAD】python-goose -- HTML Content/Article 提取器
动机 简介 用法 个人评分 动机 新闻网页,结构大多是类似的. 所以,能不能用一种通用的爬取方法来提取其中的数据? 简介 Goose最初是一个Java项目,在2011年被转为了scala项目1. Py ...
- 思科设备自动退出配置界面、打断命令输入、禁用DNS查询
1.自动退出配置界面 问题及原因:当设备没有被操作,空闲一段时间后,控制台回到初始化界面.控制台默认会话时间为10分钟,过期后跳转初始化界面 解决办法:配置控制台永不超时 Switch(config) ...
- 【转载】softmax的性质及其实现
原文地址:https://segmentfault.com/a/1190000010039529?utm_source=tag-newest softmax函数将任意n维的实值向量转换为取值范围在(0 ...
- Visual Basic 中读取逗号分隔的文本文件
TextFieldParser 对象提供一种可以轻松而高效地分析结构化文本文件(如日志)的方法. TextFieldType 属性用于定义文件是带分隔符的文件还是具有固定宽度文本字段的文件. Dim ...
- [转帖]互联网同步yum服务器阿里云 reposync createrepo
https://www.cnblogs.com/withfeel/p/10635529.html 这篇文章 比较齐整 参考文章: https://www.cnblogs.com/lldsn/p/104 ...