CAS 捋捋概念

作者: 司鑫 | 来源:发表于2018-10-27 00:11 被阅读257次

SSO


SSO(Single Sign On)即单点登录。把两个及以上的产品中的用户登录逻辑抽离出来,达到只需要登录一次就可以访问不同的产品的功能。这样可以带来很多的好处,比如避免重复开发,提升用户体验...

CAS


SSO 只是一种架构,而 CAS 则是这种架构的一种具体实现。CAS(Central Authentication Service)中心授权服务,是一种开源协议,分为1.0和2.0版本。1.0 是基础模式,2.0 为代理模式,适用与非 web 应用的SSO,1.0 适用于 web 应用。

CAS 1.0 相关概念


术语

  • Client:用户
  • Server:中心服务器,即 SSO 中负责登录的 service
  • Service:需要 SSO 的各个服务,对应的是不同的业务 service

票据

TGT:Ticket Granting Ticket
TGT 是CAS 为用户签发的登录 ticket,也是用于验证用户登录成功的唯一方式。 TGT 封装了 Cookie 值以及 Cookie 值对应的用户信息,CAS 通过 Cookie 值(TGC)为 key 查询缓存中有无 TGT(TGC:TGT(key:value)),如果有的话就说明用户已经登录成。

TGC:Ticket Granting Cookie
CAS 会将生成的 TGT 放在 session 中,而 TGC 就是这个 session 的唯一标识(sessionId),可以认为是 TGT 的key,为 TGT 就是 TGC 的 value,TGC 以 cookie 的形式保存在浏览器中,每个请求都会尝试携带 TGC。(每个服务都会在 session 和 cookie 中保存对应的 TGT 和 TGC)

ST:Service Ticket
ST 是当用户访问某一服务时提供的 ticket。用户在访问其他服务时,发现没有 cookie 或 ST ,那么就会302到 CAS 服务器获取 ST。然后会携带着 ST 302 回来。


借助官网的 Sequence Diagram 来看看整个流程:
  1. 当用户未登录情况下访问非 CAS 服务(service-1)时,CAS 会进行拦截发现当前账号未认证(没有携带JSESSIONID或者ST),于是 302 到 CAS 服务器
  2. CAS 服务器会 check 浏览器是否有 TGC ,发现没有,说明用户真的没有登录过,于是302到登录叶敏啊
  3. 用户提交登录信息到 CAS 服务器,认证成功
  4. 认证成功后,CAS 会保存一个 session,在浏览器保存一个 CASTGC cookie,然后302到最初访问的那个URL,URL上会携带一个 ST 参数
  5. 请求抵达该该服务(service-1)时,发现有 ST 参数,那么会 302 到 CAS 服务器验证 ST 是否有效
  6. 如果有效那么该服务(service-1)就会在(service-1)中生成该服务对应的 session,然后返回浏览器,生成 JSESSIONID cookie,并携带 JESSIONID cookie 302 到最初的那个请求

相关文章

  • CAS 捋捋概念

    SSO SSO(Single Sign On)即单点登录。把两个及以上的产品中的用户登录逻辑抽离出来,达到只需要登...

  • 捋捋

    从上午十点钟到现在,我已经不停地打字两小时三十分钟了,以我打字的速度,我已算不清今天一共打了多少字,思维开始有些混...

  • 捋捋

    1.办的卡,划重点,以后不办了。 蓝山整形 瘦脸针 脱毛3个位置 水光针 产后修复 贾 全身一次 9.9减肥3次 ...

  • 捋捋

    我想要什么? 我想要一个能相守相知,共同携手一生,懂我爱我,能有共同语言,能彼此奔赴一生相爱的人。 没有,那退求其...

  • 捋捋(4)

    《开始》 我跑丢了鞋 你和他乘上飞机 《中页》 你被抛弃 确要 拿我耍游戏 《后来》 死去活来 真是 现时靠演技 ...

  • 捋捋思路

    首先是火车误点事件,这个真是自己脑抽,今天不知为何,脑子有点浑浑噩噩的,不知道在想些什么,整个人都不大好,现在怀疑...

  • 捋捋自己

    1、主题是什么? 最近一直觉得自己没成长,茫然中前行,今天感觉还是有的,所以捋捋,让自己清晰一下(好像还是模式在起...

  • 捋捋思路

    断断续续上班有一个月了,还在适应和恢复状态中,想坐下来写写,但似乎又思路混乱无从说起。 一件件捋一下。 1、岗位是...

  • 捋捋读书

    1月21日 新买的书又到了... 寒假买了六本书,一本都还没看完。 趁这个机会捋捋读书。 我读的书很少。 回想起来...

  • 捋捋近况

    很久没更文了。 最近过得昏昏沉沉,无论身体还是其他,都是不如人意。 近半月前开始莫名的头痛呕吐,开始看神经内科,以...

网友评论

    本文标题:CAS 捋捋概念

    本文链接:https://www.haomeiwen.com/subject/gtqrtqtx.html