zoukankan      html  css  js  c++  java
  • 【SSO单点系列】(6):CAS4.0 单点流程序列图(中文版)以及相关术语解释(TGT、ST、PGT、PT、PGTIOU)

    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 流程图

     

  • 相关阅读:
    愿你出走半生,归来多赚点钱
    喝下这碗毒鸡汤:作为一个『乖』学生,请一定要以学业为主!
    劝你理财,是我最大的温柔-lip师兄
    大半夜客户问我为什么这么拼,我给她算了笔账,她嚎啕大哭......
    女人为什么要经济独立
    定投6年以亏损收场,他到底做错了什么
    你的死工资,正在拖垮你&一辈子需要花多少钱
    字符串的长度
    泥塑课
    最大的数
  • 原文地址:https://www.cnblogs.com/zzhuyongxin/p/4580058.html
Copyright © 2011-2022 走看看