过程中遇到的坑如下:
1. 往jre导入证书时报错: java.io.IOException: Keystore was tampered with, or password was incorrect
报错从字面上看是导入证书时keystore错误或密码错误,遇到这个错误首先确认你的密码时候正确;如果确定密码正确但是依然报错,那么就请删除你的$JAVA_HOME\jre6\lib\security\cacerts文件;然后重新导入证书;当然删除前最好是想备份一下。
2. 登录clientOne调整到认证中心cas-server认证通过后调整回clientOne,再次登录clientTwo直接地址重定向到clientTwo并且跟了一个ticket。这时候如果你刷新结果页面报错:未能够识别出目标 'ST-41-2VcnVMguCDWJX5zHaaaD-server.huzd.com'票根
原因是:ticket默认是只能用一次的; 因此两个办法来解决这个问题A.认证后直接重定向;这样url后面不会附带ticket;B.修改ticket有效次数。综合测试我建议使用A。
具体代码修改如下:
文件路径:/WEB-INF/spring-configuration/ticketExpirationPolicies.xml
CAS Validation Filter
org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
......
redirectAfterValidation
true
CAS Validation Filter
/*
class="org.jasig.cas.ticket.support.MultiTimeUseOrTimeoutExpirationPolicy"
c:numberOfUses="999"
c:timeToKill="${st.timeToKillInSeconds:18000}" c:timeUnit-ref="SECONDS"/>
本文由 huzd 创作,采用 知识共享署名4.0 国际许可协议进行许可本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名最后编辑时间
为:
2020/01/22 11:48