修改Cas Server的其它配置

1.1     修改host.name

host.name是定义在cas.properties文件中的一个属性。该属性将被定义在uniqueIdGenerators.xml文件中的各种UniqueTicketIdGenerator用来生成TGT、ST等ticket。默认在生成这些ticket时会将host.name作为对应ticket的后缀。host.name的设置在集群环境下将非常有用,其值对于每个节点来说都必须是唯一的,这样在整个集群环境下生成出的各种ticket也必定是唯一的。当然,如果只是在单机环境下使用,我们也可以不修改它。

1.2     修改SSO Session的超时策略

SSO Session的超时策略是由TicketGrantingTicketExpirationPolicy来描述的,其定义在ticketExpirationPolicies.xml文件中的。以下是其定义:

<!-- Provides both idle and hard timeouts, for instance 2 hour sliding window with an 8 hour max lifetime -->

<bean id="grantingTicketExpirationPolicy"class="org.jasig.cas.ticket.support.TicketGrantingTicketExpirationPolicy"

p:maxTimeToLiveInSeconds="${tgt.maxTimeToLiveInSeconds:28800}"

p:timeToKillInSeconds="${tgt.timeToKillInSeconds:7200}"/>

我们可以看到它需要指定两个参数,maxTimeToLiveInSeconds和timeToKillInSeconds,它们的单位都是秒。其中timeToKillInSeconds表示用户在多久不进行操作的情况下将超时,maxTimeToLiveInSeconds表示SSO Session的最大有效时间,从生成到指定时间后就将超时。timeToKillInSeconds默认是7200秒,即2小时;maxTimeToLiveInSeconds默认是28800秒,即8小时。用户如果需要修改的话可以之前介绍的Maven War覆盖的方式在ticketExpirationPolicies.xml文件中修改,也可以在cas.properties文件中通过对应的属性进行修改。

1.3     修改允许管理service的角色

有的时候我们需要查看或管理Cas Server端的service注册情况。这就需要我们在cas.properties文件中指定用户访问service管理页面需要的角色,这是通过cas.securityContext.serviceProperties.adminRoles来指定的,默认是ROLE_ADMIN。之后我们就可以通过访问“/services/manage.html”来对Cas Server上注册的service进行管理了。在访问该URL时可能会出现国际化时某信息在zh_CN中找不到的问题,解决方法可以将对应的信息在messages_zh_CN.properties中加上,或者将messages_en.properties文件copy一份重命名为messages.properties,英文版本的messages相对而言应该是比较全的。Cas Server的权限控制也是基于Spring Security的,其主要配置文件是WEB-INF/spring目录下的securityContext.xml文件,关于权限相关的内容可以在这里查找。

1.4     修改logout后的重定向

默认情况下,Cas客户端应用通过Cas Server的logout登出后是会展示Cas Server的默认登出结果页面的。如果用户希望在Cas Server登出后能够跳转到自己的应用来,则可以在访问Cas Server的logout时通过参数service传递登出后需要跳转的地址。有一点需要注意的是指定的service需要是在Cas Server注册过的,我们可以通过访问Cas Server的“/services/manage.html”对service进行管理,包括增、删、改、查等。另外我们还需要启用Cas Server在logout后的重定向功能,该功能默认是不启用的。通过去掉cas.properties文件中属性cas.logout.followServiceRedirects=false前面的注释,并修改其值为true可以启用logout后的重定向了。

1.5     禁用logout后的回调

默认情况下在通过访问Cas Server的logout进行登出后Cas Server将依次回调其中注册的各个Cas Client应用,以进行单点登出。如果用户不希望Cas Server在logout后回调Cas Client应用,则可以通过设置cas.properties文件中的slo.callbacks.disabled=true来禁用其回调。

1.6     修改service ticket的超时时间

service ticket的默认有效时间是10秒。通常来说这已经足够了,因为从Cas Server生成service ticket返回给Cas client应用,到Cas client应用发送service ticket到Cas Server进行验证这个过程10秒已经足够。这也是为什么如果我们使用debug追踪Cas应用的认证过程时经常会失败的原因,因为追踪的时候service ticket已经过了10秒的有效期了。如果用户需要修改它可以通过cas .properties文件中的st.timeToKillInSeconds属性进行修改。

(注:本文是基于Cas3.5.2所写)

(注:原创文章,转载请注明出处。原文地址:http://blog.csdn.net/elim168/article/details/44130975)

Cas(05)——修改Cas的其它配置相关推荐

  1. 单点登录 - 修改CAS服务器的一些配置( 陆续添加)

    2019独角兽企业重金招聘Python工程师标准>>> 注意:本系列采用的CAS版本是4.1.xx,其它版本有可能不适用. 1.啰嗦一下原理 在spring中,读取属性文件prope ...

  2. cas server php下载,关于用CAS Server与Php、Jetty配置实现SSO#4

    最早由Yale开发的CAS在目前开源SSO市场上占据了80%的份额.简单研究了一下,感觉CAS确实比较成熟,认证流程均可通过证书保证安全,也提供了对多种App服务器和开发环境的支持.比较感兴趣的是两个 ...

  3. java 集成 cas系统 服务端和客户端配置

    http://blog.csdn.net/yunye114105/article/details/7997041 参考: http://blog.csdn.net/diyagea/article/de ...

  4. 修改CAS的MD5加密规范

    2.4.1.背景  本文使用的CAS版本为4.0.0 CAS服务和第三方进行对接,第三方使用的MD5加密规范为64位,而CAS的MD5加密规范为32位.因为第三方数据库中数据繁多,不便于进行修改.因此 ...

  5. linux系统怎么安装cas,CAS 在Linux中安装与配置

    一.首先将 /root/cas/ 下的 page文件夹删除 只留以下两个 二.创建cas 文件夹  并将root 下的tomcat压缩包 和 cas.war 复制进去 [root@hostname ~ ...

  6. cas java web,CAS干单点登陆(SSO)——集成Java Web 项目

    在应用WEB-INF/web.xml添加filter的内容,效果如下所示 org.jasig.cas.client.session.SingleSignOutHttpSessionListener C ...

  7. java 获取 jndi_Websphere下获取jndi、java:comp/env/cas与jdbc/cas的区别

    Websphere下获取jndi,java:comp/env/cas与jdbc/cas的区别: A.lookup("java:comp/env/cas")与lockup(" ...

  8. java cas 实现_Java CAS算法简介及简单模拟CAS算法

    CAS(Compare-And-Swap:比较并替换) CAS是英文单词CompareAndSwap的缩写,意思就是:比较并替换.简单来说就是比较之后再看情况是否需要替换.CAS是乐观锁思想的一种实现 ...

  9. 批处理修改远程桌面端口,并修改相应的防火墙配置

    批处理修改远程桌面端口,并修改相应的防火墙配置 手动修改服务器的远程桌面端口即费时又费力,注册表路径太长记不住,现在你只需将以下代码保存为 .bat的批处理文件,以管理员身份运行即可修改. @echo ...

最新文章

  1. EDM HTML编写建议和规范
  2. Ice笔记--C++线程与并发(小结)
  3. NumPy-快速处理数据--ndarray对象--多维数组的存取、结构体数组存取、内存对齐、Numpy内存结构...
  4. responsibility和workload的区别
  5. Linux基础1之磁盘与分区
  6. oracle创建job一年执行,Oracle快速创建定时job执行批量转储过程脚本参考案例
  7. iOS仿京东分类菜单之UICollectionView内容
  8. Oracle 定时任务详解(dbms_job)
  9. SpringMVC工作原理及其流程
  10. 微软开始彻底封杀IE浏览器
  11. 海洋cms漏洞——search.php
  12. 深度学习图像算法在内容安全领域的应用
  13. 多个PDF文件怎么合并?PDF合并的方法教程
  14. linux内核 4g拨号,openwrt 基于qmi的 3G|4G拨号
  15. VLC for Android源码下载和编译
  16. 探索使用JAVA将汉字解析成拼音
  17. Python3 将汉语转换为汉语拼音
  18. 小白都能懂的 玩转docker系列之网络连通
  19. 2019年12月PAT甲级 第一题 Good in C(1164)题解
  20. 阿里云服务器部署个人网盘服务

热门文章

  1. 程序员Mac开发软件工具推荐
  2. fseek、ftell文件操作函数
  3. 【GD32F427开发板试用】FreeRTOS移植工程
  4. 一款兼容双系统、为代码而生的机械键盘--Keychron K3
  5. CVPR 2023 接收结果出炉!再创历史新高!录用2360篇!(附10篇最新论文)
  6. python制作文字识别_用Python轻松进行图像文本识别
  7. 数据可视化大屏设计-金螳螂项目管理指挥中心-大数据项目
  8. 一文读懂舵机工作原理并运用(附代码)
  9. oracle的购买价格研究
  10. 解决JDBC-ODBC驱动桥导致JVM crash.