认证服务简介

统一身份认证服务是基于 Apereo CAS 实现的用于Web的企业多语言单点登录解决方案,它试图成为满足身份验证和授权需求的综合平台。
CAS是一个开放且有据可查的身份验证协议。该协议的主要实现是在此处托管的具有相同名称的开源Java服务器组件,并支持大量其他身份验证协议和功能。

2、应用场景

  • 分布式多系统用户集中管理
  • 用户权限集中管理
  • 多因素认证(如微信PC端登录手机确认)

3、Apereo CAS 架构

CAS服务器和客户端包括CAS系统体系结构的两个物理组件,它们通过各种协议进行通信。

3.1、CAS服务器

CAS服务器是基于Spring框架构建的Java Servlet,其主要职责是通过发行和验证票证来认证用户并授予对启用CAS的服务(通常称为CAS客户端)的访问权限。当服务器在成功登录后向用户颁发授予票据的票证(TGT)时,将创建SSO会话。应用户的请求,使用TGT作为令牌,通过浏览器重定向将服务票证(ST)发行给服务。随后通过反向通道通信在CAS服务器上验证ST。这些交互在CAS协议文档中进行了详细描述。

备注:后面的文档中讲用 CAS_SERVER_URL 代指CAS服务器访问地址
例:CAS_SERVER_URL = http://sso.hiwepy.com

3.2、CAS客户端

“ CAS client” 一词在其常见用法中具有两种不同的含义。CAS客户端是可以通过支持的协议与服务器通信的任何启用CAS的应用程序。CAS客户端也是一个软件包,可以与各种软件平台和应用程序集成,以便通过某种身份验证协议(例如CAS,SAML,OAuth)与CAS服务器进行通信。已经开发了支持多种软件平台和产品的CAS客户端。

备注:后面的文档中讲用 MY_SERVER_URL 代指接入CAS认证的客户端服务器访问地址
例:MY_SERVER_URL = http://client.hiwepy.com

Platforms:
  • Apache httpd Server (mod_auth_cas module)
  • Java (Java CAS Client)
  • .NET (.NET CAS Client)
  • PHP (phpCAS)
  • Perl (PerlCAS)
  • Python (pycas)
  • Ruby (rubycas-client)
Applications:
  • Canvas
  • Atlassian Confluence
  • Atlassian JIRA
  • Drupal
  • Liferay
  • uPortal
作者:Jeebiz  创建时间:2019-07-04 00:31
最后编辑:Jeebiz  更新时间:2024-05-07 20:29