前言
最近这几天在研究CAS 今天终于在本地部署成功了 今天写一篇文章记录下
原理简介
SSO单点登录
在多个相互信任的系统中,用户只需要登录一次就可以访问其他受信任的系统。
新浪微博与新浪博客是相互信任的应用系统。
- 当用户首次访问新浪微博时,新浪微博识别到用户未登录,将请求重定向到认证中心,认证中心也识别到用户未登录,则将请求重定向到登录页。
- 当用户已登录新浪微博访问新浪博客时,新浪博客识别到用户未登录,将请求重定向到认证中心,认证中心识别到用户已登录,返回用户的身份,此时用户无需登录即可使用新浪博客。
- 只要多个系统使用同一套单点登录框架那么它们将是相互信任的。
CAS包含CAS Client 和 CAS Server两部分
- CAS Client:要使用单点登录的Web应用,将与同组下的Web应用构成相互信任的关系,只需在web应用中添加CAS提供的Listener和Filter即可成为CAS Client ,其主要负责对客户端的请求进行登录校验、重定向和校验ticket工作。
- CAS Server:主要负责对用户的用户名/密码进行认证,颁发票据等,需要单独的进行部署。同组下的任意一个Web应用登录后其他应用都不需要登录即可使用。
搭建CAS服务端
环境准备
jdk1.8、tomcat9、maven3+、idea
下载springboot5.x版本 cas-server代码
git clone https://gitee.com/pingfanrenbiji/cas-overlay-template.git -b 5.2 导入idea中 目录结构为
tomcat启动
访问