本教程为gevin.me原创文章,转载请注明: CAS SSO:配置过程中的错误解决方法 | Gevin’s Blog

本文将收集在配置CAS SSO遇到的所有错误,希望对大家有帮助,也方便下次搭建的时候可以参考!

一、java.lang.exception connector attribute sslcertificatefile must be defined when using ssl with apr

Tomcat启动报如上错误,只需要将conf\server.xml里面的以下内容注释掉即可:

1 <!--
2 <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
3 -->

二、unable to find valid certification path to requested target

今天在练习CAS SSO时,访问授权页面后跳转到cas认证界面,当输入用户名和密码后,报以下错误:

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

原因:客户端jre没有导入cas server生成的证书,或者导入到错误的jre路径。请记得,一定要导入到Tomcat指向的jre目录下。
导入的命令如下:

1 C:\Java\jdk1.6.0_27\bin>keytool -import -alias tomcat_client -trustcacerts -file"C:\Tomcat6_CAS\keystore\gevinme.cert" -keystore"C:\Java\jre6\lib\security\cacerts"

三、keytool错误: java.io.IOException: Keystore was tampered with, or password was incorrect

导入证书时报如上错误,原因是已经存在了一个keystore或密码不正确,解决办法是在确认密码无误的情况下,根据别名删除掉已存在的证书,或者最简单的办法就是删除掉C:\Java\jre6\lib\security\cacerts文件(前提是确认了jre里面没有导入过其它正在使用的证书)。

四、javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching xxx.xxx.xx found

检查web.xml中的配置

1 <init-param>
2     <param-name>casServerLoginUrl</param-name>
3     <param-value>https://sso.gevin.me:8443/cas/login</param-value>
4 </init-param>

确保其中的sso.gevin.me跟生成证书时第一个问填写的域名是一致的。如图:

四、org.jasig.cas.ticket.TicketCreationException: error.authentication.credentials.bad

完整错误如下:

ERROR [org.jasig.cas.web.ServiceValidateController] – <TicketException generating ticket for: [callbackUrl: http://client.gevin.me/clientA/proxyCallback]>
org.jasig.cas.ticket.TicketCreationException: error.authentication.credentials.bad

解决办法:

将web.xml中下面配置注释掉,使用代理时才需要用proxyCallback

1 <filter>
2     <filter-name>CAS Validation Filter</filter-name>
3     <filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
4     <init-param>
5         <param-name>casServerUrlPrefix</param-name>
6         <param-value>https://sso.gevin.me:8443/cas/</param-value>
7     </init-param>
8     <init-param>
9         <param-name>serverName</param-name>
10         <param-value>http://client.gevin.me</param-value>
11     </init-param>
12     <!--
13     <init-param>
14         <param-name>proxyCallbackUrl</param-name>
16     </init-param>
17     <init-param>
18         <param-name>proxyReceptorUrl</param-name>
19         <param-value>/clientB/proxyCallback</param-value>
20     </init-param>
21     -->
22 </filter>

本文固定链接: http://gevin.me/482.html | Gevin's Blog

CAS SSO:汇集配置过程中的错误解决方法的更多相关文章

  1. Linux/CentOS 配置Mysql-server过程和遇到错误解决方法

    第一步:下载mysql-server 方法1.wget url(你所要下载的链接,可以从mysq官网查找)到当前目录下 方法2.到mysql官网下载包之后通过xftp传到linux 第二步:解压tar ...

  2. TFS配置过程中的错误

    有些人在配置TFS的过程中会报出[以前的更新或安装需要重新启动操作系统.……]的错误,但会发现无论重启多次操作系统,再配置的时候依然会报这个错误,很是让人苦恼哦. 这个错误在安装SharePoint的 ...

  3. 记录centos6.8安装Oracle10.2.0.1过程中的错误解决

    [root@hadoop01 database]# ./runInstaller ./runInstaller: /opt/database/install/.oui: /lib/ld-linux.s ...

  4. SpringMVC中404错误解决方法总结

    在新手配置Spring MVC的时候,感觉都弄好了之后,运行起来却显示404错误. 网上对出现404的问题不同情况,都有了解决方法,前几天我也遇到了这个问题,顺便把这些问题总结一下. 解决问题最重要的 ...

  5. Microsoft Office Enterprise 2007 在安装过程中出错的解决方法

    今天笔者在使用PowerPoint 2007打开一个ppt的内嵌的excel表格时报如下错误: 无法找到 服务器应用程序.源文件.和项目,或返回的未知错误.请重新安装服务程序 然后就先把ppt文件发给 ...

  6. 【FAQ】运动健康服务REST API接口使用过程中常见问题和解决方法总结

    华为运动健康服务(HUAWEI Health Kit)为三方生态应用提供了REST API接口,通过其接口可访问数据库,为用户提供运动健康类数据服务.在实际的集成过程中,开发者们可能会遇到各种问题,这 ...

  7. FastDFS安装配置过程中出现错误提示"/home/yuqing/fastdfs" can't be accessed, error info: No such file or directory

    解决: mkdir -p /home/yuqing/fastdfs 这回正常了,查看启动成功与否 [root@localhost FastDHT]# ps -ef |grep track |grep ...

  8. Linq-进行Json序列化的过程中出现错误解决办法

    错误截图如下: 这是因为表t_sysuser与表t_sysrole之间存在外键联系导致的 解决办法: 进入到创建的linq to sql类中,右键[属性]-将序列化模式修改为[单向]保存即可

  9. Hibernate配置过程可能发生的问题及解决方法

    1.问题:Exception in thread "main" java.lang.NoClassDefFoundError: org/dom4j/DocumentExceptio ...

随机推荐

  1. 如何利用C生成.so供Mono调用

    Mono诞生的初衷是为了吸引更多的Windows .Net程序员来加入Linux平台的开发.但在Linux世界中C语言依然是 主流.很多时候一些关键应用(比如大型 笛卡儿 乘积运算.需要调用平台硬件功 ...

  2. json序列化后日期如何变回来

    日期格式为 日期小于10的时候 占一位 比如 2019年9月1日 2015/9/1 function ChangeDateFormat(cellval) {           var date = ...

  3. Ubuntu下Memcache的安装与基本使用

    安装Memcache Memcache分为两部分,Memcache服务端和客户端.Memcache服务端是作为服务来运行的,所有数据缓存的建立,存储,删除实际上都是在这里完成的.客户端,在这里我们指的 ...

  4. C# 两个获得程序运行路径的函数

    EXE文件的存储路径,不太受调用时环境变量的影响: Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Lo ...

  5. hbase rowkey设计的注意事项

    充分利用有序性 1.1 如果要scan操作,且不是很频繁,可以利用rowkey的有序性将需要一起扫描的数据放到一起.例如直接用时间戳.这样就可以按时间scan了.这个只要是简单的全表扫描都行. 1.2 ...

  6. BZOJ 1711: [Usaco2007 Open]Dingin吃饭

    Description 农夫JOHN为牛们做了很好的食品,但是牛吃饭很挑食. 每一头牛只喜欢吃一些食品和饮料而别的一概不吃.虽然他不一定能把所有牛喂饱,他还是想让尽可能多的牛吃到他们喜欢的食品和饮料. ...

  7. poj1436 Horizontally Visible Segments

    这是一个区间更新的题目,先将区间放大两倍,至于为什么要放大可以这样解释,按照从左到右有4个区间,y值是[1,5],[1,2],[3,4],[1,4]如果不放大的话,查询[1,4]区间和前面区间的”可见 ...

  8. ICMP 实现

    以下代码取自 kernel- . [数据结构] struct icmp_control { void (*handler)(struct sk_buff *skb); //icmp处理函数,根据icm ...

  9. Android ActivityManagerService 基本构架详解

    学习AmS有段时日了,总结下,也好梳理一下自己的思路.小兵一个,有些地方理解不对,大家可以互相讨论,交流才有进步吗~~~ AmS可以说是Android上层系统最核心的模块之一,其主要完成管理应用进程的 ...

  10. bzoj1927

    看到这道题不难想到费用流吧,但是怎么做呢? 一开始看到“每个点都恰好走一次”,我首先想到的有下界最小费用流, 然后发现这没有满足最大流的条件,然后又连边松弛掉多余的流 为了按照可行流的做法先减减去极大 ...