黑马程序员技术交流社区

标题: 【南京校区】 关于CAS的执行流程 [打印本页]

作者: 大蓝鲸小蟀锅    时间: 2018-12-14 15:57
标题: 【南京校区】 关于CAS的执行流程
本帖最后由 大蓝鲸小蟀锅 于 2018-12-14 15:59 编辑

                详细探究 CAS的执行流程
什么是CAS:  CAS是一个开源的单点登录解决方案      
CAS 包含两个部分: CAS Server 和 CAS Client。
​        CAS Server 为需要独立部署的 Web 应用。类似于solr,不用我们写代码但是需要改配置文件
​        CAS Client 支持多种语言在我们这里CAS Client就是 购物车系统 ,用户系统,前台系统

三种不同的执行情况:        1.第一次访问资源
​                           2.第二次访问资源
​                           3.第一次访问互相信任的资源
相关概念:        TGT:CAS Ticket Granted Ticket(俗称大令牌,或者说票根,他可以签发ST)存在cas-server端
​                 TGC:CAS Ticket Granted Cookie(cookie中的value),存在Cookie中,根据他可以找到TGT。
​                 ST: Service Ticket (小令牌),是TGT生成的,默认是用一次就生效了。
​        Cookie中的CASTGC:向cookie中添加该值的目的是当下次访问cas.pinyougou.com时,浏览器将Cookie中的TGC携带到cas-server,cas-server根据这个TGC,查找与之对应的TGT。从而判断用户是否登录过了,是否需要展示登录页面。TGT与TGC的关系就像SESSION与Cookie中SESSIONID的关系。
CAS的原理 (执行流程):
可以发现请求的时候是携带Cookie:CASTGC的,响应的就是一个地址加上TGT签发的ST也就是ticket。
然后重新重定向到目标资源这时在经过cas-server验证TS验证通过返回资源并把用户信息保持到session中

以上是CAS在不同情况下的执行流程






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2