文档章节

单点登录系统技术(SSO)梳理(一)

gerry_pang
 gerry_pang
发布于 2014/05/13 08:54
字数 741
阅读 408
收藏 2

1、             概念

单点登录概念:Single Sign On,简称SSO,即在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

2、             SSO实现方法

单点登录实现方法:

1、  例如:惠普灵越单点登录系统,只是通过向各个系统发送用户名和密码

2、  例如:例如淘宝、天猫大型网站所使用的SSO技术,只要登录一个另一个关联网站就不用在登录。

案例实现说明:

http://blog.chinaunix.net/uid-25508399-id-3431705.html

http://developer.51cto.com/art/201104/255729.htm

http://blog.csdn.net/clh604/article/details/20365967

 

单点登录网上有很多实现方法,例如:

  • 基于cookies实现

  • Broker-based(基于经纪人)

  • Agent-based(基于代理)

  • Token-based

 

本次单点系统的是基于Cookie技术实现的,但是使用cookie存在两个大问题:

1、  由于cookie是存储在客户端本地,所以在安全性是是存在问题。

解决方法:通过对cookie值进行加密操作。

2、  Cookie本身是不能跨域的,这个问题难解决。

解决方法:将cookie结合Ajax中的jsonp协议。

3、             JSOP跨域原理

利用在页面中创建<script>节点的方法向不同域提交HTTP请求的方法称为JSONP,这项技术可以解决跨域提交Ajax请求的问题。JSONP的工作原理如下所述:

假设在http://example1.com/index.jsp这个页面中向http://example2.com/getinfo.jsp提交GET请求,我们可以将下面的JavaScript代码放在http://example1.com/index.jsp这个页面中来实现:

var eleScript= document.createElement("script");
eleScript.type = "text/javascript";
eleScript.src = "http://example2.com/getinfo.jsp";
document.getElementsByTagName("HEAD")[0].appendChild(eleScript);

GET请求从http://example2.com/getinfo.jsp返回时,可以返回一段JavaScript代码,这段代码会自动执行,可以用来负责调用http://example1.com/index.jsp页面中的一个callback函数。

JSONP优点是:它不像XMLHttpRequest对象实现的Ajax请求那样受到同源策略的限制;它的兼容性更好,在更加古老的浏览器中都可以运行,不需要XMLHttpRequestActiveX的支持;并且在请求完毕后可以通过调用callback的方式回传结果。

JSONP缺点则是:它只支持GET请求而不支持POST等其它类型的HTTP请求;它只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行JavaScript调用的问题。

 

下面我中点说明一下跨域问题:

什么是跨域:

之所以会有跨域问题,产生的根本原因是浏览器的同源策略限制,理解同源策略的限制是指代码获得或者更改从一个域名下获取文件或者信息,也就是说我们请求地址必须和当前网站的地址相同。同源策略通过隔离来实现对资源的保护。

© 著作权归作者所有

gerry_pang
粉丝 12
博文 63
码字总数 19834
作品 0
海淀
程序员
私信 提问
XXL-SSO v1.1.0 发布, 分布式单点登录框架

XXL-JOB 正在角逐 “2018年度最受欢迎中国开源软件”,期待您宝贵的一票!投票链接 Release Notes 1、Redis配置方式增强,支持自定义DB、密码、IP、PORT等等;; 2、Token接入方式;除了常规...

许雪里
2018/11/16
1K
0
单点登录(SSO)看这一篇就够了

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

小忽悠
2018/09/06
0
0
单点登录怎么实现?

摘要:假设一个场景:公司内部有财务、OA、订单服务等各类相互独立的应用系统,员工张三对这些系统有操作权限,如果张三想要登录某个系统进行业务操作,那么他需要输入相应的账号与密码。想象...

聊聊架构
2018/01/11
0
0
单点登录系统原理与实现,图文并茂,附源码

来源:www.cnblogs.com/ywlaker/p/6113927.html 一、单系统登录机制 1、http无状态协议 web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会...

互联网架构师
09/19
0
0
单点登录(SSO)—简介

单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后...

zting科技
2017/01/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
54分钟前
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
8
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
11
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
10
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部