1.概念相关

①.术语解释

TGT、ST、PGT、PGTIOU、PT,其中CAS1.0协议中就有的票据,PGT、PGTIOU、PT是CAS2.0协议中有的票据。

CAS为用户签发的登录票据,拥有了CAS成功登录过。CAS认证成功后,TGT对象,放入自己的缓存,CAS生成的cookie,则TGT ,如果有的话,则说明用户之前登录过,如果没有,则用户需要重新登录。

http://www.coin163.com/java/cas/ticket.html

·         TGC (Ticket-granting cookie):

存放用户身份认证凭证的cookie,在浏览器和CAS Server用来明确用户身份的凭证。

·         ST(Service Ticket)

ST是CAS获取ST。用户向CAS会以此cookie值为key查询缓存中有无TGT,则用此CAS验证,验证通过后,允许用户访问资源。

·         PGT(Proxy Granting Ticket)

Proxy Service的代理凭据。用户通过CAS生成一个PGT对象,缓存在 ·         PGTIOU(全称 Proxy Granting Ticket I Owe You)

PGTIOU是CAS的serviceValidate接口验证ST成功后,CAS会生成验证ST成功的xml消息,返回给Proxy Service,xml消息中含有PGTIOU,proxy service收到Xml消息后,会从中解析出PGTIOU的值,然后以其为key,在map中找出PGT的值,赋值给代表用户信息的Assertion对象的pgtId,同时在map中将其删除。

·         PT(Proxy Ticket)

PT是用户访问Target Service(back-end service)的票据。如果用户访问的是一个Web应用,则Web应用会要求浏览器提供ST,浏览器就会用cookie去CAS获取ST,而是通过访问proxy service的接口,凭借proxy service的PGT去获取一个PT,然后才能访问到此应用。

TGTSTPGTPT之间关系

    1)ST是CAS上认证成功后,TGT,用TGT对象,然后把ST的值redirect到客户应用。

2)PGT是ST签发的。用户凭借ST去访问Proxy service,Proxy service去CAS),如果ST验证成功,则TGT对象。

    3)PT是PGT签发的。Proxy service代理back-end service去CAS根据传来的pgt参数,获取到PGT对象,然后调用其grantServiceTicket方法,生成一个PT对象。

2.CAS 基本流程图(没有使用PROXY代理)

3. 使用代理的 CAS 流程图

转载于:https://www.cnblogs.com/zzhuyongxin/p/4580058.html

【SSO单点系列】(6):CAS4.0 单点流程序列图(中文版)以及相关术语解释(TGT、ST、PGT、PT、PGTIOU)...相关推荐

  1. 2、cas4.0 单点登录 之 cas-client

    cas4.0 单点登录 之 cas-client cas4.0 单点登录 之 https证书 已经做好了证书的准备工作,现在结合cas-server来配置单点登录: 一.安装cas服务端(cas-se ...

  2. 1、cas4.0 单点登录 之 https证书

    cas4.0 单点登录 之 https证书 公司项目使用分布式部署,使用单点登录可使各节点无状态,达到业务与用户认证解耦:cas-server与cas-client通讯安全完全基于https,需要ss ...

  3. Spring Cloud云架构 - SSO单点登录之OAuth2.0登录流程(2)

    上一篇是站在巨人的肩膀上去研究OAuth2.0,也是为了快速帮助大家认识OAuth2.0,闲话少说,我根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的 ...

  4. JAVA springboot ssm b2b2c多用户商城系统源码-SSO单点登录之OAuth2.0登录流程(2)

    上一篇是站在巨人的肩膀上去研究OAuth2.0,也是为了快速帮助大家认识OAuth2.0,闲话少说,我根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的 ...

  5. java ssm 多租户_(十一)java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统- SSO单点登录之OAuth2.0登录流程(2)...

    上一篇是站在巨人的肩膀上去研究OAuth2.0,也是为了快速帮助大家认识OAuth2.0,闲话少说,我根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的 ...

  6. 整合spring cloud云架构 - SSO单点登录之OAuth2.0登录流程

    现在我们针对于login做成相关的微服务,解析如下: 请求方式:POST 服务URL: http://localhost:8080/user/login 参数类型:application/json H ...

  7. 【转】刨根究底字符编码【2.0版】(2):关键术语解释

    上一篇中讲道,字符编码所涉及的面非常广,向下的话,涉及到计算机的底层技术,甚至是硬件实现. 因此,这里就让我们从字符编码涉及到的最基本的术语讲起.大部分术语你可能都已经有了解了,但我们现在从字符编码的 ...

  8. SSO单点登录和OAuth2.0的区别和理解

    一.概述 SSO是Single Sign On的缩写,OAuth是Open Authority的缩写,这两者都是使用令牌的方式来代替用户密码访问应用.流程上来说他们非常相似,但概念上又十分不同.SSO ...

  9. Spring Cloud云架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)

    上一篇我根据框架中OAuth2.0的使用总结,画了SSO单点登录之OAuth2.0 登出流程,今天我们看一下根据用户token获取yoghurt信息的流程: /** * 根据token获取用户信息 * ...

最新文章

  1. Linux 常用命令一览
  2. VMP分析之VMP1.09虚拟化架构分析(二)
  3. 易助工资总额管控上市说明
  4. git经常使用命令和问题
  5. leetcode 363. 矩形区域不超过 K 的最大数值和
  6. 斐讯N1刷Armbian_5.62,无法自动获取到ip怎么办?
  7. ubuntu上安装python3.7教程_Day1: 如何在ubuntu 18.04中升级python 3.6到3.7
  8. 设置ROS机器人避免行走到地图未知区域
  9. php下的jsonp使用实例
  10. iOS开发使用TouchID验证登录踩过的一些坑(同时更新FaceID使用方法)
  11. C++的对象,变量初始化
  12. kindle阅读订阅的google reader时,词典不能工作的修正
  13. 新加坡经验:大数据时代政府的角色
  14. 华为 MA5680T [EPON]简单开局
  15. 数据结构—双向链表的基本操作
  16. 统计公司员工喜欢吃的水果,并打印出最喜欢吃的前K中水果【map关联式容器,k/V结构】
  17. 机器人控制算法一之四轴机械臂正、逆运动学详解
  18. c# 向Excel文件写入数据(Workbook 和Worksheet )
  19. 直流无刷电机发热问题及解决方案
  20. Python开发_励志小公式分享

热门文章

  1. 当公司辞掉85后测试员选择95后测试员后...
  2. 测试工程师面试必问的十道题目!全答上来的直接免试
  3. 组合,聚合,关联,依赖的区别
  4. 关于DX中纹理平移的一个小问题
  5. 【java】窗口和流的应用
  6. java火币网做接口_火币网API文档——Websocket 请求与订阅示例
  7. 爆米花现象_芯片爆米花现象以及解决办法
  8. 实战matlab之文件与数据接口技术,实战MATLAB之文件与数据接口技术
  9. java中notify是什么意思_java中wait,notify,notifyAll是什么?
  10. python计算数组元素个数_python简单获取数组元素个数的方法