【cas】代理认证【TODO】

Configuring-Proxy-Authentication

代理认证

默认支持CAS V1及以上的协议,它完全是一个客户端需要考虑的问题

为了避免线上运行时的安全问题,建议禁用代理认证组件

用例

一个最常用的代理认证用例是,获取一个后端服务的ticket;场景:

  • 用户在使用应用A(受CAS保护)
  • 应用A需要调用应用S来生产数据
  • 应用S也受CAS保护

因为A与S是直接在后端联系,S无法判断是否有SSO session存在。
这种场景,A需要进行代理来获取S的一个代理ticket。
代理ticket传递到S的相关端口,然后S通过CAS对其进行检索和验证。

跟踪整个路由过程,应该是:

  • 浏览器导航到 A
  • A 重定向到 CAS
  • CAS认证,重定向到 A,同时附带一个ST
  • A 校验ST,然后请求一个PGT(proxy granted ticket)
  • CAS 成功校验 ST,并产生一个 PGT
  • A 向CAS请求一个针对 S 的 PT(proxy ticket),同时A要在请求中提供PGT
  • CAS提供一个针对 S 的 PT
  • A 访问 S,并提供 PT
  • S 通过 CAS 来验证 PT
  • CAS 验证,返回成功
  • S 收到验证成功的响应,开始为 A 生产数据
  • A 接收到数据,并成功响应浏览器

流程图如下:

处理启用SSL的代理URL

验证响应中的PGT

注册服务

解密PGT

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注