企业单点登录解决方案(CAS)之一体系结构

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

体系结构

企业单点登录解决方案(CAS)之一体系结构_第1张图片

系统组件

CAS服务器和客户端组成的两个物理组件通信的CAS系统架构 通过各种协议。

CAS服务器

CAS服务器Java servlet是建立在Spring框架的主要责任是对用户进行身份验证 和授权访问CAS-enabled服务,通常称为CAS的客户,通过发行和验证票。

当服务器创建一个单点登录会话问题票据授予票(TGT)用户成功登录。 服务票证(ST)服务在用户发出的请求通过浏览器重定向使用TGT作为令牌。随后验证在CAS服务器通过秘密渠道沟通。 这些交互是CAS协议文档中详细描述。

CAS的客户端

“CAS客户端”这一术语常用有两个截然不同的含义。 CAS任何CAS-enabled应用程序客户机 可以通过一个受支持的协议与服务器通信。

CAS客户端也是一个软件包,可以与各种软件平台和应用程序集成为了与CAS服务器通过一些交流 认证协议(例如CAS,SAML,OAuth)。CAS客户端支持的软件平台和产品的数量 已经开发出来。

平台:

  • Apache httpd服务器( mod_auth_cas模块 )
  • Java( Java CAS客户机 )
  • .NET(  .NETCAS客户 )
  • PHP( phpCAS )
  • Perl(PerlCAS)
  • Python(pycas)
  • Ruby(rubycas-client)

应用程序:

  • Outlook Web Application(ClearPass + .NET CAS Client)
  • Atlassian Confluence
  • Atlassian JIRA
  • Drupal
  • Liferay
  • uPortal

当“CAS客户端”一词出现在本手册没有进一步的资格,它指的是集成 组件(如Jasig Java CAS客户机而不是应用程序依赖CAS服务器(客户端)。

协议

客户端与服务器通信的几个支持的协议。 所有支持的协议 在概念上类似,但有些功能或特征,使其可取为特定应用程序或用例。 例如,CAS协议支持委托(代理)认证,经过和SAML协议支持属性释放和单一。

支持的协议:

  • CAS(版本1、2和3)
  • SAML 1.1
  • OpenID
  • OAuth(1.0,2.0)

软件组件

它有助于描述CAS服务器的三层子系统:

  • Web (Spring MVC/Spring Webflow)
  • Ticketing(票据)
  • Authentication(身份验证)

几乎所有部署注意事项和组件配置涉及这三个子系统。

Web层的端点与所有外部系统包括CAS的客户机沟通。

票务子系统生成的Web层代表CAS门票客户机访问。

SSO会话开始发行的票据授予票成功的身份验证,因此,票务子系统经常代表认证子系统。

身份验证系统通常只处理请求的SSO会话,尽管还有其他情况下它可以调用(如强制认证)。

Spring框架

CAS使用Spring框架的许多方面,最值得注意的是, Spring MVC 和 Spring Webflow 。

Spring提供了一个完整的和可扩展的框架 CAS核心代码库以及部署人员;

它是简单的定制或扩展ca的行为挂钩 CAS和Spring API扩展点。

Spring的一般知识有利于理解之间的相互作用 一些框架成分之间,但不严格要求。

基于xml的配置用于配置CAS和春天 组件,然而,是一个核心问题,安装、定制和扩展。

能力与XML通常 和 Spring IOC容器 特别是中科院安装先决条件。

参考资料:https://apereo.github.io/cas/4.2.x/planning/Architecture.html

转载于:https://my.oschina.net/boreboluomiduo/blog/844480

你可能感兴趣的:(企业单点登录解决方案(CAS)之一体系结构)