文档章节

单点登录实现思路

思维80
 思维80
发布于 2015/09/26 17:02
字数 779
阅读 176
收藏 6

2015/9/22 22:35:50

通常 我们使用单点登录的场景 是多个应用 需要共享用户的基础信息和登录状态
2015/9/22 22:37:07
多个应用 需要考虑到 这样几种情况 
1. 同一主域名
2. 跨域名 
2015/9/22 22:41:17
我会分析单点登录的使用场景 , 场景的特性 , 实现的方法 , 遇到的问题 , 
2015/9/22 22:42:29
用户在登录之后 , 我们会对他的登录状态进行记录
2015/9/22 22:43:26
采集基础信息 (如 浏览器 , ip 访问时间) 并集合一些参数 (ticket 失效时间) , 根据相应的规则 生成ticket
这里的ticket 作为用户下次访问受保护的资源时的校验依据 (需要登录的url)
ticket 有什么特性
2015/9/22 22:44:34
时效性 , 所以这里在持久化的时候, 可以不优先选择数据库 , 而选择缓存
这里是关于ticket的部分
2015/9/22 22:45:24
针对于ticket的校验
在用户访问每一个受保护的资源的时候 , 我们都需要校验他所携带的ticket
看ticket 是否有效 , 是否过期
2015/9/22 22:46:23
校验 可以分为 客户端校验 , 和服务端校验两种方式
23:07:13
这里将单点登录系统 , 拆分成 客户端 + 服务端 两部分 , 客户端以 jar 包的形式体现 , 服务端 以后端服务形式体现
23:09:44
用户第一次登录的时候 , 生成ticket , 存入前端session (分布式用缓存), 后端进行持久化 
23:10:44
将ticket 存入 cookie 
校验分为两种类型 (表单和异步请求 , get请求)
23:12:31
get请求 , 可以通过客户端 的拦截器 依次比对 cookie - session cookie 后端
异步请求 , 通过前端封装 js的sdk , 统一入口 , 依次比对cookie - session cookie - 后端 中的ticket值
23:14:10
get请求 , 对于需要登录的用户 可以进行页面跳转 , 并给出对应的回跳链接
异步请求 , 在当前访问页面 , 画出一个frame , 进行登录验证
23:07:13
这里将单点登录系统 , 拆分成 客户端 + 服务端 两部分 , 客户端以 jar 包的形式体现 , 服务端 以后端服务形式体现
23:09:44
用户第一次登录的时候 , 生成ticket , 存入前端session (分布式用缓存), 后端进行持久化 
23:10:44
将ticket 存入 cookie 
校验分为两种类型 (表单和异步请求 , get请求)
23:12:31
get请求 , 可以通过客户端 的拦截器 依次比对 cookie - session cookie 后端
异步请求 , 通过前端封装 js的sdk , 统一入口 , 依次比对cookie - session cookie - 后端 中的ticket值
23:14:10
get请求 , 对于需要登录的用户 可以进行页面跳转 , 并给出对应的回跳链接
异步请求 , 在当前访问页面 , 画出一个frame , 进行登录验证


本文转载自:

共有 人打赏支持
思维80
粉丝 8
博文 111
码字总数 42366
作品 0
西安
程序员
前后分离+单点登录的解决方案?有的提供个思路?

谁有前后分离+单点登录的解决方案?有的提供个思路? 目前我的项目是普通的springmvc+cas 实现单点登录,最近想实现前后分离,前端用vue.js或者angular.js,但如何实现单点登录功能一直没想到...

最后111
01/12
0
0
CAS单点登录session共享问题,求教大牛指点!

原本项目A,使用的是ssh, 访问项目A时会自动判断是否登陆,如果没有进入登录页面,如果登陆则进入首页面 现在需要多项目共享登陆信息,所以使用单点登录, 对这一块不是特别熟悉所以请教大牛...

工作流流流流流
05/15
0
0
cookie+memcached实现单点登陆

10年的时候在iteye的第一篇文章记录了一下当时怎么实现我们系统的单点登陆。不过那个时候文章写的不好,思路也很浮躁,很难看懂,在csdn的第一篇技术博客打算重新温顾一下当时实现单点登陆的...

吞吞吐吐的
2017/10/18
0
0
phpcas 整合 ecms的问题

ecms是很多建站的开源cms选择之一,最近甲方提出一个额外需求是对接CAS框架实现SSO(单点登录) 关于单点登录原理,下面这篇博文是我见过,简介非常精简细致 单点登录原理分析 当下我的进度是...

南船座
08/01
0
0
简单的四种方式单点登录实现(SSO)

单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 在做单点登录...

王念博客
2016/04/17
3.6K
0

没有更多内容

加载失败,请刷新页面

加载更多

腾讯三大运维开源项目齐聚“OSCAR开源先锋日”

10月20日,腾讯开源三大运维开源项目——TARS、蓝鲸和织云Metis首次集结,参与了由中国信息通信研究院主办、云计算标准与开源推进委员会承办的 “OSCAR开源先锋日”。会上,腾讯开源团队与前...

腾讯开源
22分钟前
1
0
JAVA并发-从缓存一致性说volatile 讲的很好

学过计算机组成原理的一定知道,为了解决内存速度跟不上CPU速度这个问题,在CPU的设计中加入了缓存机制,缓存的速度介于CPU和主存之间。在进行运算的时候,CPU将需要的数据映射一份在缓存中,...

码代码的小司机
40分钟前
1
0
IDEA 调试功能

1.设置断点 选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可。 2.开启调试会话 点击红色箭头指向的小虫子,开始进入调试。 IDE下方出现Debug视图,红色的箭头指向的是现在调试程序...

狼王黄师傅
47分钟前
1
0
Java面试170题

1、面向对象的特征有哪些方面? 2、访问修饰符public,private,protected,以及不写(默认)时的区别? 3、String 是最基本的数据类型吗? 4、float f=3.4;是否正确? 5、short s1 = 1; s1 = ...

lanyu96
53分钟前
0
0
优雅的写出类

前言 虽然现在已经是ES6的时代,但是,还是有必要了解下ES5是怎么写一个类的。 本文详述JavaScript面向对象编程中的类写法,并分步骤讲述如何写出优雅的类。 一、例子 例子为一个轻提示组件T...

peakedness丶
58分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部