单点登录在IT系统中是一项常用的重要功能。本项目基于知名的Jasig CAS框架,实现单点登录的功能,内容包括:
CAS Server端:
1.CAS服务器端基于CAS3.5.1配置;
2.在CAS-Server\cas\WEB-INF\deployerConfigContext.xml中配置数据源,来源于三个不同的数据库,读取用户表和密码信息用于验证;
3.CAS默认需要开启https,比较麻烦,在这里关闭https的配置: 修改deployerConfigContext.xml:
<bean class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler" p:httpClient-ref="httpClient" p:requireSecure="false" />
修改ticketGrantingTicketCookieGenerator.xml和warnCookieGenerator.xml。把p:cookieSecure="true"改为p:cookieSecure="false"
CAS Client端:
1.Client端基于cas-client-core 3.2.1实现;
2.在CAS-Client项目的web.xml中,配置相关的过滤器,对发往应用的请求进行拦截,若没有登录,则自动跳转到单点登录的页面,如下图:
- CAS做单点登录存在的不足:
- 不利于分布式部署,一旦CAS的客户端和服务器做了分布式部署的话,就得自行实现ticket共享和session共享,比较麻烦,CAS整体上还是比较适合传统的单机项目。
- 代码比较笨重,认证流程也较为繁琐。
- Spring boot整合Mybatis实现增删改查(支持多数据源)
- Struts2,Hibernate,Spring三大框架的整合实现增删改查
- Spring,SpringMVC和Hibernate的整合实现增删改查
- Spring平台整合activiti工作流引擎实现OA开发
- Spring发布与调用REST风格的WebService
- Spring整合Apache Shiro框架,实现用户管理和权限控制
- 使用Spring security做权限控制
- Spring整合Jasig CAS框架实现单点登录
- Spring连接mongoDB数据库实现增删改查
- Spring连接Redis实现缓存
- Spring连接图存数据库Neo4j实现增删改查
- Spring平台整合消息队列ActiveMQ实现发布订阅、生产者消费者模型(JMS)
- Spring整合消息队列RabbitMQ实现四种消息模式(AMQP)
- Spring框架的session模块实现集中式session管理 购买
- Spring整合websocket实现即时通讯
- 使用Spring boot整合mybatis,rabbitmq,redis,mongodb实现增删改查 购买
- Spring MVC整合FastDFS客户端实现文件上传
- 23种设计模式,源码、注释、使用场景 购买
- 使用ETL工具Kettle的实例
- Git指南和分支管理策略 购买
- 使用数据仓库进行OLAP数据分析(Mysql+Kettle+Zeppelin)
购买
- zookeeper原理、架构、使用场景和可视化
- Spring boot整合Apache dubbo v2.7.5实现分布式服务治理(SOA架构)
购买
包含组件Spring boot v2.2.2+Dubbo v2.7.5+Nacos v1.1.1 效果图
- 使用Spring Cloud Alibaba v2.1.0实现微服务架构(MSA架构)
购买
包含组件Nacos+Feign+Gateway+Ribbon+Sentinel+Zipkin 效果图
- 使用jenkins+centos+git+maven搭建持续集成环境自动化部署分布式服务 购买
- 使用docker+compose+jenkins+gitlab+spring cloud实现微服务的编排、持续集成和动态扩容 购买
- 使用FastDFS搭建分布式文件系统(高可用、负载均衡)购买
- 搭建高可用nginx集群和Tomcat负载均衡 购买
- 搭建可扩展的ActiveMQ高可用集群 购买
- 实现Mysql数据库的主从复制、读写分离、分表分库、负载均衡和高可用 购买
- 搭建高可用redis集群实现分布式缓存 购买
- Spring boot整合Elastic search实现全文检索
包含组件nacos v1.1.0 + seata v0.7.1 +spring boot dubbo v2.7.5 效果图
- Spring cloud alibaba v2.1.0整合seata实现分布式事务
购买
包含组件nacos v1.1.0 + seata v0.7.1 +spring cloud alibaba v2.1.0 效果图
