服务器登录原理,单点登陆(单点登录原理)

article/2025/9/3 17:34:31

单点登录简介

SSO&CAS是什么

单点登录适合什么场景

单点登录的三种实现方式

CAS的几个重要知识点

CAS的实现过程

单点登录简介

单点登录(SingleSignOn,SSO),就是通过用户的一次性鉴别登录。当用户在身份认证服务器上登录一次以后,即可获得访问单点登录系统中其他关联系统和应用软件的权限,同时这种实现是不需要管理员对用户的登录状态或其他信息进行修改的,这意味着在多个应用系统中,用户只需一次登录就可以访问所有相互信任的应用系统。这种方式减少了由登录产生的时间消耗,辅助了用户管理,是目前比较流行的。

A.传统登录流程图:

e714baca7bc4c881134bac7706e23790.png

B.单点登录流程图:

74622dac4b507dbc48eae9b1cf5ee159.png

SSO&CAS是什么

SSO

SSO是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要 登录一次 就可以访问所有相互信任的应用系统。

f7e69dedc3b0246ddbde7cef1dd7448e.png

CAS

CAS 是 Yale 大学发起的一个企业级的、开源的项目,旨在为 Web 应用系统提供一种可靠的单点登录解决方法(SSO的一种框架)

CAS 包括两部分:CAS Server 和 CAS Client

CAS Server:负责完成对用户的认百思特网证工作 , 需要独立部署。

CAS Client:负责处理对客户端受保护资源的访问请求,需要对请求方进行身份认证时,重定向到 CAS Server 进行认证。

阶段汇总集合:一年内容,200期Java面试题阶段汇总

单点登录适合什么场景

拿新浪举个单点登录的例子

ad247b54f7d9dfaa5c0f325b22335ca3.png

新浪微博与新浪博客是相互信任的应用系统:

当用户首次访问新浪微博时,新浪微博识别到用户未登录,将请求重定向到认证中心,认证中心也识别到用户未登录,则将请求重定向到登录页。

当用户已登录新浪微博访问新浪博客时,新浪博客识别到用户未登录,将请求重定向到认证中心,认证中心识别到用户已登录,返回用户的身份,此时用户无需登录即可使用新浪博客。

只要多个系统使用同一套单点登录框架那么它们将是相互信任的。

单点登录的三种实现方式

1.同域SSO

没有设置独立的 SSO 服务器,因为业务后台服务器本身就足以承担 SSO 的职能。

2.同父域SSO

和同域SSO不同在于,服务器在返回 cookie 的时候,要把cookie 的 domain 设置为其父域。

3.跨域SSO(CAS)

设置专门SSO服务器,当两个百思特网产品不同域时,cookie无法共享,从而我们就需要搭建SSO服务器。

CAS的几个重要知识点

接口:

/login:登录接口,用于登录到中心服务器。

/logout:登出接口,用于从中心服务器登出。

票据

1. TGT (Ticket Grangting Ticket) :

TGT 是 CAS 为用户签发的登录票据,拥有了 TGT,用户就可以证明自己在 CAS 成功登录过。TGT 封装了 Cookie 值以及此 Cookie 值对应的用户信息。

2.TGC(Ticket Granting Cookie) :

CAS Server 生成TGT放入自己的 Session 中,而 TGC 就是这个 Session 的唯一标识(SessionId),以 Cookie 形式放到浏览器端。

3.ST(Service Ticket) :

ST 是 CAS 为用户签发的访问某一 service 的票据。用户访问 service 时,service 发现用户没有 ST,则要求用户去 CAS 获取 ST。

09e97ff31edc8c09e2214e897b47ef26.png

CAS的实现过程

跨域SSO(CAS)实现过程


http://chatgpt.dhexx.cn/article/CGvxo5a9.shtml

相关文章

单点登陆 SSO

参考文章 同域下的单点登录 (sso.a.com、app1.a.com、app2.a.com) 统一通过sso.a.com 登录,但有以下两个问题: 1、Cookie是不能跨域的,我们Cookie的domain属性是sso.a.com,在给app1.a.com和app2.a.com发送…

五、微服务版单点登陆系统(SSO)

微服务版单点登陆系统(SSO)实践 文章目录 微服务版单点登陆系统(SSO)实践一、单点登陆系统简介1. 背景分析2. 单点登陆系统概述3. 单点登陆系统解决方案设计 二、单点登陆系统初步设计1. 服务设计2. 工程结构设计 三、系统基础服务工程设计及实现1. 业务描述2. 表结构设计3. 工…

单点登陆(SSO)

一、背景 在企业发展初期,企业使用的系统很少,通常一个或者两个,每个系统都有自己的登录模块,运营人员每天用自己的账号登录,很方便。但随着企业的发展,用到的系统随之增多,运营人员在操作不同的…

08单点登陆+Oauth2

详情:如看不懂跳转此地 1.1单点登录系统 每个站点都实现了专用登录模块。各站点的登录状态相互不认可,各站点需要逐一手工登录 这样的系统,我们又称之为多点登陆系统。应用起来相对繁琐(每次访问资源服务都需要重新登录认证和授…

微服务版单点登陆系统(SSO)

单体架构中的用户的状态的存储是如何实现的? 单点登陆系统概述 单点登录,英文是 Single Sign On(缩写为 SSO)。即多个站点共用一台认证授权服务器,用户在其中任何一个站点登录后,可以免登录访问其他所有站点。而且&a…

SpringBoot跨系统单点登陆的实现

什么是单点登陆 单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,…

单点登陆的实现

王昱 yuwang881gmail.com 博客地址 http://yuwang881.blog.sohu.com 摘要 :单点登录( SSO )的技术被越来越广泛地运用到各个领域的软件系统当中。本文从业务的角度分析了单点登录的需求和应用领域;从技术本身的角度分析了单点…

CAS 单点登陆

一、Tomcat配置SSL 1. 生成 server key 以命令方式换到目录%TOMCAT_HOME%,在command命令行输入如下命令: keytool -genkey -alias tomcat_key -keyalg RSA -storepass changeit -keystore server.keystore -validity 3600 用户名输入域名,如localhos…

单点登陆的测试

今天做了个单点登陆 。 但是怎么测试呢? 下面请看详解: 源码中是这样的: /*** 单点登录改造* * param request* param response* return* throws IOException* throws HttpException* throws IOException*/RequestMapping(value "/rcbS…

LINUX单点登陆

1.在grub引导界面(如下图)按e进入编辑模式 2.按↓键,找到以linux16开头的行,在最后加上 rd.break(如下图,注意前面有一个空格) 3.按Ctrlx进入救援模式 4.重新挂载/sysroot为可读写模式,并切换根目录为/sysroot # mount -o remou…

java实现单点登陆(SSO)

java实现单点登陆(SSO) 网络域名必须完全一致,才代表同一站点。 域名映射 :访问后面的 会跳转到前面 单点登陆概念: 多系统,单一位置登录,实现多系统同时登陆。常出现在互联网和企业级平台中。…

OAuth2:单点登陆客户端

基于EnableOAuth2Sso实现 前面我们将验证服务器已经搭建完成了,现在我们就来实现一下单点登陆吧,SpringCloud为我们提供了客户端的直接实现,我们只需要添加一个注解和少量配置即可将我们的服务作为一个单点登陆应用,使用的是第四种…

单点登陆概述

概述 什么是单点登陆 单点登陆(single sign on),简称SSO,是比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登陆一次就可以访问所以相互信任的应用系统。 单点登陆的实现方案 一般…

怎么做登陆(单点登陆)功能?

登陆是系统最基础的功能之一。这么长时间了,一直在写业务,这个基础功能反而没怎么好好研究,都忘差不多了。今天没事儿就来撸一下。 以目前在接触的一个系统为例,来分析一下登陆该怎么做。 简单上个图(有水印。因为穷所…

SSO单点登陆

1 SSO简介 1.1 什么是SSO 单点登录(SingleSignOn,SSO),在多个应用系统中,用户只需一次登录就可以访问所有相互信任的应用系统。单点登录常用的协议包括 CAS、OAuth、OpenID Connect、SAML。 例如:百度旗下有很多的产品&#xff…

sso单点登陆实现

多系统实现单点登录方案:SSO 单点登录 一、什么是单点登录SSO(Single Sign-On) SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验…

单点登陆和无状态登陆

很多人都听说过单点登陆。今天我们来说说什么是单点登陆和无状态登陆。 传统的项目都是使用session来验证登陆,但是在分布式项目中使用session是不行的。因为每个服务都是一个独立的项目,那么我们将服务拆分,肯定会有一个登陆的模块。如果将用…

windows文件句柄修改

找到如下注册表分支: HKEY_LOCAL_MACHINE – SOFTWARE – – Microsoft – – – Windows NT – – – – CurrentVersion – – – – – Windows 在右侧窗格中可以看到名为“GDIProcessHandleQuota”与“USERProcessHandleQuota”的注册表项; GDIProcessHandleQuo…

Linux 查看文件句柄信息

查看系统的最大文件句柄数和文件句柄的使用者PID ulimit -n查看当前系统的最大句柄数显示如下 ulimit命令详解 ulimit -HSn x设置当前系统的文件句柄数为x 以上命令中,H指定了硬性大小,S指定了软性大小,n表示设定单个进程最大的打开文件句柄…

Windows查看文件句柄

2019独角兽企业重金招聘Python工程师标准>>> 图形界面方式 打开任务管理器 2. 性能tab,点击链接打开资源监视器; 3. 现在cpu tab,关联的句柄后面的输入框可以输入你要搜索的文件路径,可模糊匹配; 命令方式 Windows系统本身并不内置命令查看句…