cas 提供了可插拔式的ticket过期策略框架用于tgt和st。在cas应用中,tgt和st的过期策略配置默认在cas/webapp/WEB-INF/spring-configuration/ticketExpirationPolicies.xml
文件中。在cas的过期策略中,并没有明确指出哪一种ticket应用于哪一种过期策略,但是我们根据类名,还是能够进行区分的。但是并不能说明这个过期策略只能用于这一种ticket,也就是说它的过期策略是人为划分的。
tgt的过期策略
1.org.jasig.cas.ticket.support.HardTimeoutExpirationPolicy
它的配置
<bean id="grantingTicketExpirationPolicy"
class="org.jasig.cas.ticket.support.HardTimeoutExpirationPolicy">
<constructor-arg index="0" value="7200000" /> <!-- 单位是毫秒 -->
</bean>
在tgt创建之时起,两个小时之后则tgt过期,这个是硬性的没有商量的余地,所以类名有个hard;
2.org.jasig.cas.ticket.support.NeverExpiresExpirationPolicy
它的配置
<bean id="grantingTicketExpirationPolicy"
class="org.jasig.cas.ticket.support.NeverExpiresExpirationPolicy">
</bean>
这个不用解释了;
3.org.jasig.cas.ticket.support.RememberMeDelegatingExpirationPolicy
它的配置
<bean id="grantingTicketExpirationPolicy"
class="org.jasig.cas.ticket.support.RememberMeDelegatingExpirationPolicy">
<property name="sessionExpirationPolicy">
<bean class="org.jasig.cas.ticket.support.TimeoutExpirationPolicy">
<constructor-arg index="0" value="XXXXXXXX" />
</bean>
</property>
<property name="rememberMeExpirationPolicy">
<bean class="org.jasig.cas.ticket.support.TimeoutExpirationPolicy">
<constructor-arg index="0" value="XXXXXXXX" />
</bean>
</property>
</bean>
请参看:remember me 一节,
满足sessionExpirationPolicy或者rememberMeExpirationPolicy过期策略之一,则tgt过期;
4.org.jasig.cas.ticket.support.ThrottledUseAndTimeoutExpirationPolicy
它的配置
<bean id="grantingTicketExpirationPolicy"
class="org.jasig.cas.ticket.support.ThrottledUseAndTimeoutExpirationPolicy">
p:timeToKillInMilliSeconds="7200000"
p:timeInBetweenUsesInMilliSeconds="5000"
</bean>
在tgt创建之后,上次应用距本次应用超过2小时或者小于5秒钟,只要满足其一,则tgt过期。
5.org.jasig.cas.ticket.support.TicketGrantingTicketExpirationPolicy
这个是cas对于tgt的默认配置,它的配置:
<bean id="grantingTicketExpirationPolicy" class="org.jasig.cas.ticket.support.TicketGrantingTicketExpirationPolicy"
p:maxTimeToLiveInSeconds="${28800}"
p:timeToKillInSeconds="${7200}"/>
当用户在2个小时(7200秒)之内不动移动鼠标或者进行系统超过8个小时(28800秒),则tgt过期;
6.org.jasig.cas.ticket.support.TimeoutExpirationPolicy
它的配置
<bean id="grantingTicketExpirationPolicy"
class="org.jasig.cas.ticket.support.TimeoutExpirationPolicy">
<constructor-arg index="0" value="7200000" /> <!-- 单位是毫秒 -->
</bean>
如果两个小时不动鼠标则tgt过期;
st的过期策略
1.org.jasig.cas.ticket.support.MultiTimeUseOrTimeoutExpirationPolicy
它的配置
<util:constant id="SECONDS" static-field="java.util.concurrent.TimeUnit.SECONDS"/>
<bean id="serviceTicketExpirationPolicy" class="org.jasig.cas.ticket.support.MultiTimeUseOrTimeoutExpirationPolicy"
c:numberOfUses="1" c:timeToKill="10" c:timeUnit-ref="SECONDS"/>
或者
<bean id="serviceTicketExpirationPolicy"
class="org.jasig.cas.ticket.support.MultiTimeUseOrTimeoutExpirationPolicy">
<constructor-arg index="0" value="1" /> <!--使用次数 -->
<constructor-arg index="1" value="10000" /> <!-- 单位是毫秒 -->
</bean>
使用次数为1 次或者超过10秒没有应用均会引起st过期;
相关推荐
CAS单点登录,退出后ticket失效报出异常解决办法——换jar包 把客户端的 casclient.jar 包换成我的这个。
CAS单点登录,退出后ticket失效报出异常解决办法——换jar包 把客户端的 casclient.jar 包换成我的这个。
基于springboot,cas,shiro,pac4j,实现cas rest接口获取ticket,不再跳转cas server登录页
CAS JPA-Ticket存储解决负载均衡配置
CAS入门测试工程
spring+springmvc+shiro+cas单点登录实例 springmvc+spring+shiro+cas单点登录实例 加入了登录验证码认证,修改了下首页样式,不过样式没有弄好,很丑的,有空自己再弄下 说明:cas-server是单点登录服务端,用的是...
10.CAS-redisCluster集群存储ticket(相应redis必须配置成cluster集群) 11.CAS-加密存储ticket 12.CAS-实习动态验证码 13.CAS-实习自定义登录 14.CAS-实现自定义返回用户登录信息 15.CAS-页面缓存记住我 ----------...
二、CAS 原理和协议 CAS protocol 是基于 HTTPS 的一种身份验证协议,使用 Ticket Granting Ticket(TGT)和 Service Ticket(ST)来实现单点登录。下面是 CAS 协议的基本流程: 1. 用户访问受保护的资源时,客户端...
Cas安装包以及入门demo案例,还有springSecurity与CSA的集成Demo
内含本人实例精华,一个自做PPT,动画解析cas协议,四个客户端client程序实例,一个server端程序,N个文档以及所有xml文件。配套讲解博客地址: [置顶] SSO单点登录系列3:cas-server端配置认证方式实践(数据源+...
单点登录之CAS SSO从入门到精通
统一身份认证-CAS配置实现 SSO单点登录Spring-Security+&+CAS+使用手册 统一身份认证-CAS配置实现 CAS登录验证(密码MD5、SHA加密后_再进行Base64加密实现代码)_与Liferay的用户身份验证对应
CAS4重叠模板通用CAS Maven战争叠加层可以执行最新版本的CAS 4.x系列。 该覆盖图可自由用作本地CAS Maven战争覆盖图的起始模板。版本号< cas>4.2.1</ cas>建议要求JDK 1.8以上配置etc目录包含需要复制到/cas/etc的...
CAS 介绍 CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。CAS 具有以下特点: • 开源的企业级单点登录解决方案。 • CAS...
cas4.2.4、cas4.0war包 默认账号:casuser密码:Mellon
CAS协议,包括cas1.0和cas2.0的协议,cas 协议分为两部分,一部分是票据-ticket,一部分是url。
CAS Server 4.0二次开发说明文档, SSO
java单点登录服务端代码,基于开源的cas架构。
CAS Server 4.0 , Client 3.3 ,共3个TOMCAT,已经配置完毕,下载后, 1 修改tomcat-caswebappscasWEB-INF/deployerConfigContext.xml 中的35、48行,数据的配置; 2 在表t_user 中加一行数据 口令:e10adc3949ba59...
CAS 是建立在开放的协议之上的,支持多层 SSO 能力,能够与多种语言和平台集成。 CAS 的总体架构包括 CAS 服务器和 CAS 客户端两个部分。CAS 服务器是一个基于 Java 的 Web 应用程序,使用 Spring 技术,支持 ...