五分钟初步了解CAS单点登录

简介: 五分钟初步了解CAS单点登录

前言:

小面学弟:小面,啥是单点登录啊?

小面:单点登录啊,就是SSO,你可以简单理解为,假如你有多个系统A,B,C,D, 你只要登录过一次A,那么在其他可信任的系统BCD就都可以去访问了。

小面学弟:哦~原来是这样,那啥是CAS啊?

小面:CAS就是一个开源项目,是一种可靠的单点登录。

小面学弟:小面,能详细讲讲不?

小面白眼。

正文:

CAS主要分为两个部分,一个是client端,一个是server端。

server端主要职责是,对用户进行认证操作,需要去独立部署。

client端主要职责是,对于受保护的信息资源,client会重定向至server端进行认证操作。

假设我们要访问一个网站A。用户第一次访问网站A,会经过认证过滤器,这个认证过滤器的主要作用就是去看该用户是否在该网站进行过登录操作,如果认证过滤器返回该用户没有进行过登录操作,那么将会重定向到认证中心(CAS Server)。

此时我们将会重定向www.CASXXX.com?A地址 ,他会拼接上原来要访问的网站A,这样认证完成后会重定向至A。

我们会向CAS认证系统发出请求,CAS认证系统接受请求返回登录页面。用户进行登录操作,提交请求。

此时CAS Server端就会根据用户输入的账号密码进行认证操作。并且响应浏览器。同时返回一个ticket令牌,在Cookie中设置一个TGC,这个cookie是CAS认证系统的cookie,我们只有携带了这个cookie,我们才可以正常地去访问这个网站。

TGC可以理解为,我们下一次访问CAS认证系统,浏览器就会带着TGC去访问,Cas就会根据TGC去查找TGT,判断用户是否登录。客户端拿到ticket后,会经过ticket过滤器,去CAS判断该ticket是否有效。

通过ticket校验后,session就会被保存进用户的信息。下一次访问的时候,就可以直接了当获取到用户信息从session中,不用再次验证了。网站A接收到了CAS认证系统,知道了用户已经登录,ticket有效。这样用户第一次访问就就结束了。

当用户第二次访问网站A。我们还是会经过认证过滤器,但是此时客户端已经有session,可以获取到用户信息,所以不需要进行验证,可以直接访问。

当用户第一次访问网站B。将重定向到CAS认证中心,由于我们已经进行过登录操作,因此浏览器是带着cookie的。认证中心收到请求后,签发一个ticket给浏览器。然后会重定向到client端。client端带着ticket去验证是否有效。认证成功后,把用户信息存进session。同时告知浏览器可以访问。

这里小面绘制了一个流程图给大家看一下,以方便大家去理解。

总结:

总结就是:重定向到CAS Server ,用户输入账号密码,验证成功后,建立浏览器和CAS的信任,然后CAS返回ST,应用服务器拿到st去CAS认证是否合法, 认证成功那应用与浏览器建立信任。

今天的分享就到此结束,如果觉得本文不错的还请伙伴们帮忙点赞转发,欢迎持续关注我们!

相关文章
|
4月前
|
Java
Ruoyi若依前后端一体项目整合cas单点登录
Ruoyi若依前后端一体项目整合cas单点登录
752 0
|
XML 安全 JavaScript
技术汇总:第八章:CAS单点登录
技术汇总:第八章:CAS单点登录
324 0
|
数据安全/隐私保护 微服务
cas单点登录原理解析
首先了解一下单点登录,目的是为了解决微服务各个服务路径都不同。不可能每访问一个服务都进行登录一下。所以登录一个系统后,再登陆其他系统不用输入账号密码被称为单点登录。(sso)
283 1
cas单点登录原理解析
|
Java 应用服务中间件
CAS单点登陆原理简介及环境搭建(3)
CAS单点登陆原理简介及环境搭建(3)
133 0
CAS单点登陆原理简介及环境搭建(3)
|
应用服务中间件 数据库
CAS单点登陆原理简介及环境搭建(2)
CAS单点登陆原理简介及环境搭建(2)
161 0
CAS单点登陆原理简介及环境搭建(2)
|
应用服务中间件 数据安全/隐私保护
CAS单点登陆原理简介及环境搭建(1)
CAS单点登陆原理简介及环境搭建(1)
210 0
CAS单点登陆原理简介及环境搭建(1)
|
JSON Java 数据格式
(十一)Java springcloud B2B2C o2o多用户商城 springcloud架构- - SSO单点登录之OAuth2.0登录流程(2)
根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的登录认证): 完整项目的源码来源 技术支持2147775633
1716 0
|
Web App开发 算法 Java
码农翻身讲网络4:从Token到Sessions说到OAuth认证和CAS单点登录
干掉状态:从session到token   原创: 刘欣 码农翻身 2017-03-20 1 美好的旧时光 我经常怀念三十年前那美好的旧时光, 工作很轻松, 生活很悠闲。
|
Web App开发 MySQL 关系型数据库
CAS单点登录方案
应用场景 当几个应用系统需要同一个入口时,那么此时就需要配置CAS统一单点登录了。 操作步骤 SSO实现有很多产品,我们今天选用的这个是耶鲁大学发明的CAS SSO服务器。
1634 0
|
XML Java 数据安全/隐私保护