CAS 单点登录【1】入门

很早期的公司,一家公司可能只有一个应用,慢慢的应用开始变多,如员工报销系统、审核系统、学习系统……

每个应用都要进行注册登录,退出的时候又要一个个退出,用户操作起来确实有点崩溃。

我们想要另一种登录体验,公司里面的应用只要一次注册,登录的时候只要一次登录,退出的时候只要一次退出,这样就完美了。

CAS 算是最普遍、最通用的单点解决方案,但如果自家公司大牛云集,也不妨依据公司业务自己造轮子。

JA-SIG CAS(Central Authentication Service)为 Web 应用系统提供了单点登录服务。它的特性包括:

一个开放和具有很好文档支持的协议;

一个Java开源服务器组件;

提供多种类型的客户端包括 Java、.Net、PHP、Perl、Apache、uPortal等;

能够与uPortal、BlueSocket、TikiWiki、 Mule、 Liferay、Moodle集成使用。

此篇博客算是 CAS 简单入门,去掉了复杂的 HTTPS 协议、采用默认的 CAS 服务端检验方法和凭证,目的是新手能快速搭建单点环境。

在实际项目中使用时,肯定会做很多个性化的定制,如单点登陆页面、服务端用户的校验方式、会话中存储的用户对象结构等等。

由于 CAS 默认是基于 HTTPS 协议,所以需要配置服务端的 tomcat,使之支持SSL安全协议访问。

但对于初次体验的人来说,还是建议取消 CAS 默认的 HTTPS 协议,能节省很多的麻烦和配置过程。

需要进行修改的配置文件:

从 github clone 下来的源码进行编译和打包,然后将对应的 war 包放入 tomcat webapp 下启动 tomcat。

服务端默认采用的是静态账号和密码的验证方式,WEB-INF/deployerConfigContext.xml 如下。

这里当然可以自定义校验类(必改的地方),可以通过数据库账号密码、特殊的业务逻辑等等,只要符合 CAS 的返回值即可。

服务端搭建起来后,其他应用只需要简单的几部配置就可以轻松通过 CAS 单点进行用户的验证。

依赖对应的客户端 jar :

配置 web.xml 如下:

到此,整个单点服务端和应用端的使用都已描述如上,已亲测可用。

Original: https://www.cnblogs.com/java-class/p/7762872.html
Author: Orson
Title: CAS 单点登录【1】入门

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/536980/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球