CAS Server 4.0二次开发说明文档(5)

2019-05-17 09:49

commons-pool2 2.4.2 redis.clients jedis 2.8.1 7.2. 创建RedisTicketRegistry

在org.jasig.cas.ticket.registry包下创建RedisTicketRegistry,提供一些基于redis对Ticket的增删改查操作。这里涉及内容较多,具体不一一列出,请查看源码。

7.3. 创建TicketRedisTemplate

在org.jasig.cas.ticket.registry包下创建TicketRedisTemplate,用来管理redis的序列化策略 package org.jasig.cas.ticket.registry; import org.jasig.cas.ticket.Ticket; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer; import org.springframework.data.redis.serializer.RedisSerializer; import org.springframework.data.redis.serializer.StringRedisSerializer; /** * CasServer集群环境下使用Redis缓存Ticket * Created by fengjing on 2016/4/27. */ public class TicketRedisTemplate extends RedisTemplate { public TicketRedisTemplate() { RedisSerializer string = new StringRedisSerializer(); JdkSerializationRedisSerializer jdk = new JdkSerializationRedisSerializer(); setKeySerializer(string); setValueSerializer(jdk); setHashKeySerializer(string); setHashValueSerializer(jdk); } public TicketRedisTemplate(RedisConnectionFactory connectionFactory) { this(); setConnectionFactory(connectionFactory); afterPropertiesSet(); } }

7.4. 修改ticketRegistry.xml

修改src\\main\\webapp\\WEB-INF\\spring-configuration\\ticketRegistry.xml文件,配置我们自定义的RedisTicketRegistry

Configuration for the default TicketRegistry which stores the tickets in-memory and cleans them out as specified intervals. 这里关于redis的配置放在了cas.properties文件中。

7.5. 修改web.xml

最后一步,记得在web.xml中添加。使其支持集群部署。

关于tomcat集群部署及整合nginx或apache负载均衡session同步的内容这里不做赘述,可参考我之前写的搭建配置文档。

使用Redis或Memcached实现Tomcat7+Nginx集群及Session共享 https://github.com/sxyx2008/tomcat7-nginx-redis-memcached-cluster Apache、Tomcat7集群session共享及负载均衡

https://github.com/sxyx2008/apache2-tomcat7-cluster

8. CAS Server登录页定制

这部分内容较为简单。

8.1. 拷贝资源文件

事先让美工设计一套登录页面。然后将css、image、js拷贝到src\\main\\webapp\\css src\\main\\webapp\\images src\\main\\webapp\\js目录下。

8.2. 修改casLoginView.jsp

修改src\\main\\webapp\\WEB-INF\\view\\jsp\\default\%ui\\casLoginView.jsp文件,直接拷贝原来的spring form表单组件替换现有模板对应的表单元素。注意其name属性的值。 下图为自定义的cas server登录页

8.3. 基于theme方式

以上是一种快捷便利的修改方式,官方也提供基于theme的修改方案。

按原有目录结构拷贝src\\main\\webapp\\WEB-INF\\view\\jsp\\default一份并为其重命名。该名称即为theme name。然后修改src\\main\\webapp\\WEB-INF\\cas.properties进行如下配置 cas.viewResolver.basename=default_views

# cas定制登录页主题lamppa 主题文件路径src\\main\\webapp\\WEB-INF\\view\\jsp\\lamppa #cas.themeResolver.defaultThemeName=cas-theme-lamppa #cas.viewResolver.basename=lamppa_views 接着修改对应的文件即可。

9. 修改CAS Server为移动端设备提供REST登录服务

http://apereo.github.io/cas/4.0.x/protocol/REST-Protocol.html

Cas Server主要为web应用提供单点登录解决方案。可在现实中有时候我们也需要为移动端设备提供登录服务。这时候难道还是去请求cas server的统一登录页吗?这有点太low了。Cas官方为我们提供了cas rest风格的登录支持。要使用该功能,就必须得添加相应的依赖。

9.1. 添加依赖

org.jasig.cas cas-server-integration-restlet 4.0.0 org.springframework spring-webmvc org.springframework spring-context org.springframework spring-core org.restlet.jee org.restlet 2.1.0 org.restlet.jee org.restlet.ext.spring 2.1.0 org.springframework spring-asm org.springframework spring-web org.springframework spring-expression org.restlet.jee org.restlet.ext.servlet 2.1.0


CAS Server 4.0二次开发说明文档(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:国家安全网上法律知识竞赛参考答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: