SSO(单点登录)与旅游年卡
SSO(单点登录)与旅游年卡
SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。(来自百度百科)
旅游年卡:一次办卡,多个景点游玩。避免了每个景点排队买票浪费时间影响心情。
我喜欢逛,07年广州一行让我爱上了旅行。十年间转战祖国大江南北。东到浙江苏州上海,南到广东珠海澳门,西到宜昌长江三峡,北到首都长城山海关。经常说的一句话,历史上的云游诗人作家什么的,到现在是写不出那些脍炙人口的诗词作曲的。为啥?全都圈起来收费啦。这些年去过得地方火车票和门票都是厚厚的一扎。

好了,话回正题。SSO与旅游年卡有什么关系呢?上面已经说过了他们两个的各自的作用。他们有什么共同点呢?一次,都只需要一次。单点登录一次登录,就可以访问多个互相信任的应用系统,而不需要用户访问每个应用系统的时候都登录一次。旅游年卡一次开卡,就可以游玩多个授权的景点,而不需要游客到每个景点大门都排队买票。省钱省事省时,你说爽不爽。
然而,在网上看了很多老司机写的SSO单点登录的原理与实现,都很难一下子明白(我是最业余的程序员)。无意看到去游玩时的照片,想起每次都是用旅游年卡去游玩,立马想到哎嘛这不就是单点登录么?到植物园门口"滴"一下就进去了;到动物园门口“滴”一下就进去了;到海洋馆“滴”一下就进去了……其实,在SSO登录后再访问别的应用系统,也有一个“滴”的过程,只是这个过程太快。我们根本看不到而已。
下面,我就带着大家一起在SSO的世界里旅游吧。
首先,要登录系统必须要有一个账号,要旅游必须要有一个年卡。
其次,要访问不同的应用系统必须得在其中一个系统中发起登录。同样,要使用旅游年卡,必须在其中一个景点开卡(录指纹、激活)。
然后,SSO服务器会对账号密码进行校验,如果校验成功,会将登录用户信息存放到一个tokey中,并返回到请求的应用系统中。
比如,有三个应用系统:博客园(www.cnblogs.com)、植物园(www.zhiwuyuan.com)、动物园(www.dongwuyuan.com)。(搞定了跨域,那其他的都不是问题)不要问我为什么一上来就搞跨域,我就问你不跨域你干嘛要用SSO?
另外还有一个SSO登录验证系统(www.sso.com)。
好,现在我要去博客园看猴子(www.cnblogs.com/monkey),啊。需要登录。。。biu,页面跳转到SSO登录页(www.sso.com/login?url=www.cnblogs.com/monkey)。
输入账号、密码(年卡刷卡验指纹)。登录成功,好,给你带上令牌(token)再回去(www.cnblogs.com/monkey?token=猴子看到不咬你)。来到博客园的猴山,发现不少程序猿。一个个眼红睚眦的瞪着你。突然,猴王看到你胸前挂着的令牌(token=猴子看到不咬你)。微笑着向你打起了招呼:哎呀,快看。是同类耶……于是你就在博客园跟猴子们愉快的玩耍了半天。
吃过午饭,你又想去植物园逛逛。于是打开了(www.zhiwuyuan.com)。把你手中的令牌(年卡)递给了园丁大叔,园丁大叔拿着你的令牌“biu”的一下跑到验证系统验证你是否登录(www.sso.com/login?url=www.zhiwuyuan.com&token=猴子看到不咬你),系统:咦,这不是猴子看到不咬你么。好、验证通过。然后又“biu”的一下跑回来,而这时候你的眼睛还没有眨一下。然后大叔向你打开了植物园的大门。植物们看到你胸前的令牌,都不害怕了,争相开放着鲜艳的花朵,散发出迷猴、啊不、迷人的芬芳。
到了晚上,你还想去动物园看看菜鸟,于是你就带着令牌出发了……
就这样愉快的玩了一天,第二天,你要出差了,也不知道要去多久。于是你就告诉博客园:博博,我要走了,别再记着我了。博客园听到此话,biu的一下跑到验证系统(www.sso.com/logout?token=猴子看到不咬你),验证系统从记录中删除猴子看到不咬你对应的信息。并且告诉你:安心的去吧,下次再来猴子看到会咬你的哦。(旅游年卡注销)而后你再拿着猴子看到不咬你的令牌到植物园人家就不给你开门了。因为(www.sso.com/login?url=www.zhiwuyuan.com&token=猴子看到不咬你)猴子看到不咬你已经不存在了。
我们知道旅游年卡一般都是有有效期的(通常为一年),同样。SSO登录验证也是有有效期的,这个可以根据系统设置。如果在这个有效期内用户没有主动退出,则一直到过这个有效期,再访问应用系统则需要重新登录(旅游年卡则需要重新激活)。而到下一次再访问登录时,SSO验证系统会给你一个新的(token=猩猩看到不咬你)令牌。(旅游年卡会给你一个新的有效期起止时间),然而账号密码(年卡、指纹)还是不变的。
好了,这篇文章只讲了SSO相关的思路,并没有讲具体的实现与逻辑处理。权当抛砖引玉了。欢迎拍砖。
(完)
SSO(单点登录)与旅游年卡的更多相关文章
- 使用 JSONP 实现简单的 SSO 单点登录
SSO 即 Single Sign On(单点登录). 一.二级域名之间的单点登录 不需要用到JSONP 或者 p3p 协议,直接使用 COOKIE 就行了,因为顶级域名相同就能实现 COOKIE ...
- CAS实现SSO单点登录原理
1. CAS 简介 1.1. What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨 ...
- [sso] 单点登录认证流程
一.流程说明 第一步:访问cas过滤链接ssoLogin,拼凑定向到 CAS_SERVER 获取ticket的URL 第二步:CAS_SERVER校验用户信息,生成Ticket 第三步:重新定向到访问 ...
- php sso单点登录原理阐述
原理:就是用户登录了单点登录系统(sso)之后,就可以免登录形式进入相关系统: 实现: 点击登录跳转到SSO登录页面并带上当前应用的callback地址 登录成功后生成COOKIE并将COOKIE传给 ...
- SSO单点登录之跨域问题
第一次写博客,与大家共勉. 这里用到的原理其实非常简单,将cookie存在一个公共的站点的页面上就可以了,这里我们管那个站点叫主站S. 先说说所谓的跨域 环境1:a.xxx.com需要跟b.xxx.c ...
- cas sso单点登录系列4_cas-server登录页面自定义修改过程(jsp页面修改)
转:http://blog.csdn.net/ae6623/article/details/8861065 SSO单点登录系列4:cas-server登录页面自定义修改过程,全新DIY. 目标: ...
- 学习CAS实现SSO单点登录
学习CAS实现SSO单点登录 网上找了几篇比较详细的教程,在这记录一下: 原理: CAS实现SSO单点登录原理 教程: 1.CAS实现单点登录(SSO)经典完整教程 2.SSO之CAS单点登录实例演示 ...
- CAS实现SSO单点登录原理(转)
1. CAS 简介 1.1. What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨 ...
- sso单点登录,单点登录原理图,单点登录图解,单点登录
sso单点登录,单点登录原理图,单点登录图解,单点登录 ============================== ©Copyright 蕃薯耀 2017年11月20日 http://www.cnb ...
随机推荐
- 读书笔记-你不知道的JavaScript(上)
本文首发在我的个人博客:http://muyunyun.cn/ <你不知道的JavaScript>系列丛书给出了很多颠覆以往对JavaScript认知的点, 读完上卷,受益匪浅,于是对其精 ...
- 【MyBatis源码分析】insert方法、update方法、delete方法处理流程(下篇)
Configuration的newStatementHandler分析 SimpleExecutor的doUpdate方法上文有分析过: public int doUpdate(MappedState ...
- 详解npm的模块安装机制 --社会我npm哥,好用话不多
依赖树表面的逻辑结构与依赖树真实的物理结构 依赖树表面的逻辑结构与依赖树真实的物理结构并不一定相同! 这里要先提到两个命令:tree -d(linux)和npm ls(npm) 在一个npm项目下 ...
- Dojo初探之3:dojo的DOM操作、query操作和domConstruct元素位置操作(基于dojo1.11.2版本)
前言: 前面两章讲了dojo的基本规范和配置,当然这个配置不是必须的,当你有这需求的时候就可以用到dojo的config配置. dojo的所有js都是符合AMD规范进行异步加载的:http://blo ...
- 获取Skype用户IP地址
#!/usr/bin/env bash ESC_SEQ="\x1b[" COL_RESET=$ESC_SEQ"39;49;00m" COL_RED=$ESC_S ...
- Thinkphp 3.0-3.1版代码执行漏洞
近日360库带计划中播报的ThinkPHP扩展类库的漏洞已经查明原因:系官方扩展模式中的Lite精简模式中存在可能的漏洞(原先核心更新安全的时候 并没有更新模式扩展部分,现已更新).对于使用标准模式或 ...
- 测序分析软件-trimmomatic的记录
1.下载相关软件,网址:http://www.usadellab.org/cms/index.php?page=trimmomatic,它有源代码和二进制两种文件(建议都下载,然后合并成一个文件,因为 ...
- 解决其他浏览器没有propertychange事件
监听实现: /** * Listener.js * 此类用于解决非ie下,通过js改变input的值时, * 无法触发其事件的问题(如:onpropertychange, oninput, oncha ...
- Vue 爬坑之路(四)—— 与 Vuex 的第一次接触
在 Vue.js 的项目中,如果项目结构简单, 父子组件之间的数据传递可以使用 props 或者 $emit 等方式 http://www.cnblogs.com/wisewrong/p/62660 ...
- [1] 插件架构(PLUG-IN)
网上的一种比较好对插件的定义是:插件(Plug-in,又称addin.add-in.addon或add-on,又译外挂)也称为扩展,是一种遵循一定规范的应用程序接口编写出来的程序,主要是用来扩展软件功 ...