CAS单点登录流程梳理

CAS单点登录详细流程 一、CAS简介和整体流程 CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。CAS 具有以下特点: 【1】开源的企业级单点登录解决方案。 【2】CAS Server 为需要独立部署的 Web 应用。 【3】CAS Client 支持非常多的客户端(这里指单点登录系统中的... 阅读详情

前言

新的项目中,需要对接单点登录,于是了解了一下 CAS 的登录流程。

必看流程图

先上一张图(图片来源网络)

img

登录

按照流程图,前端需要在初次进页面的时候,请求服务器获取鉴权。

服务端发现这个用户没有相关凭证的时候,可以返回相应的状态码告知前端需要登录。

前端跳转到 https://*.*/cas/login?service=http://*.* 进行登录。

登录完成之后, CAS 会返回给前端一个 ticket,例如: http://*.*?ticket=ST-1212

这时候,重新进入的前端页面,前端页面继续向服务端请求鉴权。

服务端发现这个用户没有服务端发放的凭证,但是拥有 CAS 颁发的 ticket,这个时候,服务端请求 CAS 验证登录(注意:由于 CAS 颁发的 ticket 失效时间特别短,默认是 10s,所以我们手动测试的时候,需要注意一下速度)。

请求链接 demo:https://*.*/cas/serviceValidate?service=http://*.*?ticket=ST1212

验证通过的话,会返回 XML 信息,结果如下:

<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
    <cas:authenticationSuccess>
        <cas:user>login_name</cas:user>
    </cas:authenticationSuccess>
</cas:serviceResponse>

验证失败,返回 XML 信息,结果如下:

<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
    <cas:authenticationFailure code='INVALID_TICKET'>
        Ticket &#039;ST-12148040&#039; not recognized
    </cas:authenticationFailure>
</cas:serviceResponse>

如若验证通过,则生成相关凭证给前端。

当前端发起任何服务端的请求时,都需要带上服务端的凭证,如若发现失效,则重复整个登录流程。

登出

登出相对比较简单了,直接通过 https://*.*/cas/logout?service=http://*.* 即可。

cas单点登录流程揭密 cas中的Cookie、Session运用流程 阅读详情

相关推荐

Cas登录流程

最近的项目中需要使用cas单点登录,做个简单的记录,梳理下整个cas的认证的流程;这里以自己的应用为例;我项目的地址是 http://172.26.4.13:9998/ 1>第一次访问http://172.26.4.13:9998/应用;访问任何一个需要权限的地址,后端的filter会拦截请求,并重定向到cas的地址 可以看到这里的状态码302,重定向的地址是 https://g...

xiaoguangtouqiang的博客 2418

cas登录流程解析及springboot集成cas

cas详细登录流程及springboot集成cas(前后端一体)

qq_65642052的博客 5360

单点登录服务端搭建之流程梳理与总结[cas-5.2.2]

本人在公司负责搭建单点登录服务端,过程中遇到诸多小问题,cas的搭建很简单,根据cas官方网站资料即可完成基础的环境搭建,但是搭建完成后需要根据公司要求做一些个性化处理时需要对cas的整个认证过程有一个清晰的认识才能够高效的完成后面的个性化需求,在这里把本人已经花时间找出来的一些东西分享出来 ,也给自己留一个可追溯的资料 追溯cas认证的整个流程 cas认证都有两种方式: 1....

cityLight的博客 3972

CAS单点登录

单点登录(Single Sign On),是目前比较流行的企业业务整合的解决方案之一。sso是指在多个应用系统中,用户只需要登录一次就能访问所有相互信息的应用系统。一个组织里会有多个系统,进入每个系统都需要用户进行单独登录,这种方式对用户体验、账号管理、账号安全等方面都不具备优势。如果能用让用户只需要登录一次就能进入多个系统,这不仅仅给用户带来了更好的体验更重的是方便了各个系统之间的整合以及降低了安全风险和管理的消耗。账号管理系统结构图如下:

slightly1的博客 1379

cas单点登录详解(配合网站实例梳理流程)

www.cas.client.com为cas客户端,也就是用户要访问的资源所在,www.cas.server.com为cas服务端,是单点登录的认证中心。 图中各步骤拆解说明: ①:首先用户访问www.cas.client.com,cas客户端收到请求判断用户是否登录。判断过程在AuthenticationFilter过滤器中进行。AuthenticationFilter主要判断用户是否登录,未登录则重定向到登录页面。 那么是如何验证用户是否登录过呢? 如果session中包含“const_ca..

weixin_42397181的博客 394

基于CAS协议的SSO单点登录-深度剖析

基于CAS协议的SSO单点登录-深度剖析

weixin_38203586的博客 1674

【工作记录】前后端分离场景下CAS单点登录的集成思路与实践@20230926

主要记录前后端分离场景下实现CAS单点登录的流程和思路。

泽济天下的专栏 1610

【AI编程】Java程序员如何用Cursor 3小时搞定CAS单点登录前端集成

本文将展示如何用Cursor这把技术杠,在无需系统学习前端技术栈(HTML+CSS+JS、Vue等)的前提下,轻松完成CAS前端集成。

c18213590220的博客 3022

从 CAS 到 OAuth、OIDC、SAML:一文看懂认证、授权与单点登录

本文围绕 CAS、OAuth 2.0、OIDC 和 SAML 四种常见身份协议,系统梳理认证、授权、单点登录与身份联合之间的区别。文章从核心概念出发,分别介绍 CAS 的 Ticket 机制、OAuth 2.0 的授权流程、OIDC 的身份认证能力,以及 SAML 在企业身份联合中的应用,并通过横向对比帮助读者理解它们各自解决的问题、适用场景和选型思路。

2301_79472735的博客 879

熬夜冠军,为你整理单点登录体系架构,跟着学,还怕什么学不会吗

今天的干货有点湿,里面夹杂着我的泪水。可能也只有代码才能让我暂时的平静。 不知道大家平时在学习的时候,拿到一份资料,有没有先看一下目录的习惯,今天也不是看书,就是单纯的经验分享,那么,咱也不整那个花里胡哨的目录了,简单直白点,直接一套思维导图奉上,清晰明了,(个人建议大家在平时的学习中也可以去整理类似的架构图,梳理一下自己的知识) 简介 单点登录英文全称Single Sign On,简称就是SSO。它的解释是:在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统。 常见的应用.

Java架构师联盟 673

在 CentOS Stream 10 上搭建 Kubernetes 集群并支持开发调试与日志查看

搭建 Kubernetes 集群的每个步骤详细的文档。

灵犀物润 1644

CAS单点登录实战:从核心原理到部署排错全解析

单点登录(SSO)是现代分布式系统中解决统一身份认证的核心技术,其核心原理是通过一个独立的认证中心来集中管理用户身份,避免各应用系统重复开发登录功能。CAS(Central Authentication Service)协议是实现SSO的经典方案,它定义了票据(如TGT、ST)的签发与验证流程,确保用户一次登录即可访问所有授权应用。在工程实践中,CAS的价值在于提升用户体验、简化运维并增强安全性,广泛应用于企业多系统整合、SaaS平台及微服务架构。本文将深入解析CAS的票据流转机制,并结合服务注册表配置、H

weixin_33978578的博客 316

基于知识图谱的职位推荐系统的设计与实现

在职位推荐系统中,实体可以包括职位、公司、技能等,而关系可以包括职位与公司的关联、职位与技能的关联等。基于知识图谱的职位推荐系统可以提供更加智能和精确的职位推荐服务。通过收集和预处理数据构建知识图谱,并设计推荐算法和用户界面,可以实现一个完整的职位推荐系统。通过利用知识图谱技术,我们可以构建一个更加智能和精确的职位推荐系统。本文将介绍如何设计和实现基于知识图谱的职位推荐系统,并提供相应的源代码。通过定义实体和关系的节点和边,可以将数据存储在图数据库中,并建立它们之间的关系。

RiqaEditor的博客 1668

一文入门 Spring Security with 单点登录(jasig)

"认证", 是建立一个他声明的主题的过程(一个"主体"一般是指用户, 设备或一些可以在你的应用程序中执行动作的其他系统);CAS 会将生成的 TGT 放在 session 中, 而 TGC 就是这个 session 的唯一标识(sessionId), 可以认为是 TGT 的key, 为 TGT 就是 TGC 的 value, TGC 以 cookie 的形式保存在浏览器中, 每个请求都会尝试携带 TGC;使用Spring Security 解决了这些问题, 也为你提供许多其他有用的, 可定制的安全功能;

pcLD2fXZQ的博客 366

ARM CoreLink 系列 5.1.1 -- CI-700 System Address Map 】

所有的CHI 命令都包含一个 Source ID 和 Target ID, 其中 Source ID 可以来自于 RN Node, Target ID 可以来自于HN node或者其他 SN node. 其中 Target ID 是通过 SAM解析传入的地址得到的。对于 CI-700中的所有 RN Node 中的 SAM 多会进行配置,因为RN Node 访问的是整个地址空间,不同的地址空间会有不同的属性(I/O, DRAM),所以会对RN SAM 配置多个不同属性的区域。

CodingCos的博客 771

全功能爬虫框架:Botasaurus 的详细使用(现代化、反检测、高并发的智能爬虫框架)

Botasaurus是一个基于 Python 的全栈式智能数据采集框架。它深度融合了以下关键技术: 无头浏览器自动化(Headless Browser Automation):基于 Playwright 或 Puppeteer,支持 Chromium、Firefox、WebKit; 高级反检测引擎(Anti-Detection Engine):自动绕过 WebDriver、Canvas、AudioContext 等 50+ 种指纹检测; 声明式任务模型(Declarative Task Model):用装

数据知道的博客 4371

单点登录 SSO 完整知识体系(面试+落地全栈)

本文全面解析单点登录(SSO)技术体系,涵盖基础概念、主流实现方案、核心技术原理及安全体系。主要内容包括: 基础概念:SSO是分布式系统中的统一身份认证方案,用户一次登录即可访问所有信任系统,需满足同信任域前提。 五大实现方案: 共享Cookie:同域简单方案,依赖浏览器Cookie机制 跨域Cookie+中转跳转:历史过渡方案(已淘汰) CAS协议:传统企业跨域标准,基于票据体系 OAuth2.0+OIDC:现代互联网首选,支持认证授权和无状态架构 SAML2.0:高安全联邦认证协议(境外政企专用) 核心

专注 Java 后端开发,分享基础语法、JVM、并发、Spring 全家桶、微服务、分布式、性能优化等实战干货。坚持输出高质量技术笔记,用简单语言讲清复杂原理,助力每一位 Java 开发者稳步进阶。 475

Python 爬虫实战:爬取去哪儿网酒店评价,提取住宿体验关键词

本文介绍了基于去哪儿网酒店评价数据的爬取与分析方法。首先通过分析网页结构和数据加载机制,定位到评价数据的JSON接口及关键参数。然后使用Python搭建爬虫环境,实现多页评价数据的批量采集与存储,并通过反爬策略确保数据获取的稳定性。在文本分析环节,采用jieba分词和TF-IDF算法提取高频关键词,结合词云可视化展示用户关注点。分析结果显示位置、服务、卫生是核心关注维度,同时识别出好评与差评的关键驱动因素。该方法为酒店服务优化和消费者决策提供了数据支持,并可通过扩展实现更深入的情感分析和竞品对比。

2503_91057718的博客 999

使用spring security 实现CAS单点登录

每次验证时,CAS Server 会根据 TGT签发一个ST,并把ST拼接在service参数中,同时将相应的TGC设置到用户的cookie中(域为CAS Server),并返回302 状态码,指示浏览器重定向到 service,例如 http://cas.client.com/me?在单点登录系统中,需要定义一个独立的认证中心,只有认证中心才能接受用户的用户名密码等安全信息,而其他系统并不提供登录入口,只接受认证中心的间接授权,间接授权通过令牌实现。,只需要登录一次就可以进入多个系统,而不需要重新登录。

OneAuth身份云 1498

进阶05:Labview与汇川PLC通过OPC UA通信(AM500系列)

本文介绍了LabVIEW与汇川PLC通过OPC UA通信的实现方法。主要内容包括:1)编写汇川AM521 PLC结构化文本程序,配置OPC UA服务器并导出变量;2)使用UaExpert客户端测试读取PLC变量;3)开发C#封装库实现OPC UA连接、读写和订阅功能;4)在LabVIEW中创建通信类,封装dll功能;5)设计LabVIEW界面实现变量读写和PLC程序触发。最终实现了PLC变量监控、数据读写及Y1-Y4输出控制功能,为自动化系统开发提供了基础框架。

weixin_38637405的博客 1302

玩转Docker小游戏项目系列:Docker部署魔塔网页经典小游戏

玩转Docker小游戏项目系列:Docker部署魔塔网页经典小游戏

jks212454的博客 1063

Spring Security系列教程26--Spring Security实现CAS单点登录的原理及流程详解

前言 从本章节开始,一一哥 会给各位讲解一个很常见也很重要的知识点,就是单点登录!现在的大型分布式项目,基本都会考虑实现单点登录,而且现在网上也有很多单点登录的实现方案、开源项目,但是针对单点登录的实现原理,讲解的并不是很细。你可以参考其他开源案例项目,再结合本系列文章,就可以对单点登录有较为深入的认识。 如果你对单点登录是什么也不知道,那就先看本文,了解单点登录的含义吧。 一. 单点登录 1. 产生背景 很早的时候,一家公司里可能只有一个Server,后来慢慢的Server开始变多了,而每个Se

一一哥 3171

电容式三点式振荡电路/电感式三点振荡电路基础知识及Multisim电路仿真

摘要:三极管振荡电路利用放大特性与正反馈实现自激振荡,需满足巴克豪森条件(增益≥1,相位匹配)。核心由放大级、反馈网络、选频网络和稳幅环节构成。主要分为三类:1)LC/RC正弦波振荡电路(如电容三点式、电感三点式),输出高频/低频正弦波;2)多谐振荡电路,通过电容充放电产生方波;3)张弛振荡电路,生成锯齿波等。设计需关注相位匹配、增益控制和元件适配。LC振荡频率由谐振参数决定,RC振荡由时间常数控制。稳幅机制通过非线性或主动元件维持等幅输出。该电路在信号发生、时钟源等领域有广泛应用。

XU157303764的博客 2038

CAS单点登录系列(一)-单点登录及CAS概述

近期使用了单点登录的相关技术,一直想抽点时间把相关知识点梳理一下,一来加深自己对这块知识的理解,二来可以作为技术记录备以后查阅。现在开始进入正题。 本文大纲分为几个部分 相关名词介绍 单点登录解决了什么痛点及它的劣势 CAS基本的特性 相关名词介绍 单点登录 一般我们都叫SSO,英文全称叫Single Sign-On 。白话理解就是,在一个系统登录成功,访问其他应用系统不需要二次登录即可访问...

海洋中摇曳的扁舟 577

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

上一篇: 499问题查询解决
下一篇: Git回滚笔记
IMJCW
博客等级 码龄10年 13粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值