美文网首页
CAS服务工作流程

CAS服务工作流程

作者: 一个人一匹马 | 来源:发表于2019-10-09 09:57 被阅读0次
CAS时序图
image.png
具体流程:

1.用户访问app系统,app系统是需要登录的,但用户现在没有登录。
2.跳转到CAS server,即SSO登录系统,后续图中的CAS Server统一叫做SSO系统。SSO系统也没有登录,弹出用户登录页。
3.用户填写用户名、密码,SSO系统进行认证后,将登录状态写入SSO的session,浏览器(Browser)中写入SSO域下的Cookie。
4.SSO系统登录完成后会生成一个ST(Service Ticket),然后跳转到app系统,同时将ST作为参数传递给app系统。
5.app系统拿到ST后,从后台向SSO发送请求,验证ST是否有效。
6.验证通过后,app系统将登录状态写入session并设置app域下的Cookie。
至此,跨域单点登录就完成了。以后我们再访问app系统时,app就是登录的。

访问app2系统时的流程:

1.用户访问app2系统,app2系统没有登录,跳转到SSO。
2.由于SSO已经登录了,不需要重新登录认证。
3.SSO生成ST,浏览器跳转到app2系统,并将ST作为参数传递给app2。
4.app2拿到ST,后台访问SSO,验证ST是否有效。
5.验证成功后,app2将登录状态写入session,并在app2域下写入Cookie。
这样,app2系统不需要走登录流程,就已经是登录了。SSO,app和app2在不同的域,它们之间的session不共享也是没问题的。

CAS登录认证方式
1.JDBC认证

CAS Server可以直接访问数据库,通过一定的配置,直接进行用户名和密码的校验。

2. REST认证

2.1什么是Rest认证?

cas服务端通过调用其他服务接口,将用户名和密码传过去进行认证。这就是rest认证。

2.2什么情况下需要用到Rest认证?

在不允许cas服务直接访问账号数据库的时候,这个时候就需要用到Rest认证。

2.3具体参考官网

https://apereo.github.io/cas/5.3.x/installation/Rest-Authentication.html

2.4流程介绍

当用户点击登录后,cas会发送post请求到http://rest.cas.com:8083/login并且把用户信息以"用户名:密码"进行Base64编码放在authorization请求头中。

若输入用户名密码为:admin/123456;那么请求头包括:

authorization=Basic Base64(admin+MD5(123456))

那么发送后客户端必须响应一下数据,cas明确规定如下:

● cas 服务端会通过post请求,并且把用户信息以”用户名:密码”进行Base64编码放在authorization请求头中

● 200状态码:并且格式为

{“@class”:”org.apereo.cas.authentication.principal.SimplePrincipal”,”id”:”casuser”,”attributes”:{}}是成功的

● 403状态码:用户不可用

● 404状态码:账号不存在

● 423状态码:账户被锁定

● 428状态码:过期

● 其他登录失败

相关文章

  • CAS服务工作流程

    CAS时序图 具体流程: 1.用户访问app系统,app系统是需要登录的,但用户现在没有登录。2.跳转到CAS s...

  • Springboot cas单点登录流程

    Springboot集成单点登录流程梳理记录。 cas单点登录包括 cas server、cas client、用...

  • 单点登录

    CAS 中央认证服务 基础模式 SSO 访问流程主要有以下步骤: 访问服务: SSO 客户端发送请求访问应用系统...

  • 单点登录CAS-Client配置

    cas的客户端配置很简单,要做的工作也很少。1、把cas服务端的证书导入客户端2、添加cas-client-cor...

  • 搭建cas的php客户端

    在这之前已经搭好了CAS服务端 基于CAS的单点登录实战(1)-- 搭建cas服务器 PHP-Client# ph...

  • KaliLinux常用服务配置教程DHCP服务工作流程

    KaliLinux常用服务配置教程DHCP服务工作流程 DHCP服务工作流程如图1.1所示。 具体的工作流程如下所...

  • springboot cas二次认证、session失效与aja

    springboot cas client接入问题记录。 1.二次认证由Springboot cas单点登录流程[...

  • CAS服务启动

    CAS服务端下载:http://www.jasig.org/cas/download 下载完成后将cas-serv...

  • CAS单点登录之支持数据库认证

    本博客介绍一下基于CAS4.2.7的配置,之前博客CAS4.2.7服务端配置已经介绍了怎么部署CAS服务端,不过在...

  • CAS服务

    概览 CAS ( Central Authentication Service ) 旨在为 Web 应用系统提供一...

网友评论

      本文标题:CAS服务工作流程

      本文链接:https://www.haomeiwen.com/subject/svywpctx.html