单点登录有两种模型,一种是共同父域下的单点登录(例如域名都是 xx.a.com),还有就是完全跨域下的单点登录(例如域名是xx.a.com,xx.b.com),本文我们讲一下完全跨域下的单点登录该怎么实现。

基于安全考虑,想通过cookie来实现这个功能是不太可能的了(也许有其他黑科技可以实现,这里不做讨论)。这里介绍的方案是参考shiro框架的跨域session共享方案来实现的。我们知道浏览器访问系统的时候会生成一个session,那么每次请求如何知道是来自同一个浏览器呢?是因为浏览器为每个域存储了一个可以称作为session的cookie的东西,每次请求该域都会把对应的这个cookie带上,然后服务器根据这个cookie值去查找对应的session。

想要达到完全跨域的单点登录要满足两个条件:

首先要让session可以被所有系统都访问到。

其次要让同一个浏览器下的想要实现跨域的所有系统都使用同一个session。

第一个条件通过使用spring-session框架把session存储在redis中,可以很容易实现。

那么第二个条件如何实现呢?答案就是想方法为每个域设置相同的session的cookie 。

举个例子,比如有a、b两个站点域名分别是www.a.com,www.b.com,这两个域名需要共享session,并且已b域名下的session为主,a登录时跳转到b域进行登录,成功登录之后重定向到a时把sessionid带上,a站点拿到sessionid之后回写到浏览器覆盖原来生成的session的cookie。这时再次访问a站点用的就是同一个session了。大概画一个图如下:

上述方案可以实现完全跨域下的单点登录,但是存在一个很大的问题,就是安全问题!

假如在第④步操作重定向回a站点时,请求链接被不法分子拦截到了,他拿着这个链接就可以直接访问a站点了。

安全问题解决方案如下图:

其实⑥、⑦两步主要要解决的问题是,向b(认证服务器)证明:“我请求认证我是合法请求,我不是非法请求”。认证成功后,返回sessionId。


http://www.taodudu.cc/news/show-2522144.html

相关文章:

  • 【场景化解决方案】OA付款审批同步到金蝶KIS
  • OA性能调优方案(一)
  • 广西建工OA系统office插件显示问题解决方案
  • 物业平台借力OA系统,实现报修管理数字化
  • OA常见问题和解决方案
  • 利用计算机网络实现OA的功能,中小企业oa办公系统解决方案怎么做?
  • 泛微怎么自动保存服务器,【泛微OA】系统超时登出解决方案
  • OA系统(海信集团)双因素身份认证解决方案
  • 微软.NET平台OA办公解决方案
  • 【场景化解决方案】OA审批与金智CRM数据同步
  • 提供免费的Java OA系统 解决方案
  • OA解决方案
  • 团队协作OA解决方案
  • 当下OA系统的使用缺陷以及相关解决方案
  • OA系统高性能解决方案(史上最全的通达OA系统优化方案)
  • 帮助睡眠最好的办法是什么?对睡眠好的东西分享
  • 2017报计算机热不热,【2017年10月份热吗】2017年10月份热不热_亲亲宝贝网
  • 什么可以有助睡眠,助睡眠的生活好品
  • seqkit根据基因id_西番莲内参基因及其筛选方法和应用与流程
  • 在matlab下使用预训练模型Alex Net进行迁移学习的实验与分析
  • 花语那些事!
  • 20开头的HSCode总览
  • 新品1
  • vue实现结算淘宝购物车效果
  • 现代薄膜温室大棚五大优点,常用的经济作物都有哪些?
  • 在matlab下使用深度学习预训练模型Alex Net进行迁移学习的实验与分析
  • 改善睡眠的东西有哪些?促进睡眠的方法
  • 助睡眠的神器,这些东西能改善失眠,一觉睡到天亮
  • Pandas的列表值处理技巧,避免过多循环加快处理速度
  • html5都能干嘛种花,把这19种花种起来,整个家都能变成大花园!

跨域单点登录解决方案相关推荐

  1. Cookie同域,跨域单点登录

    Cookie 同域单点登录最近在做一个单点登录的系统整合项目,之前我们使用控件实现单点登录(以后可以介绍一下).但现在为了满足客户需求,在不使用控件情况下实现单点登录,先来介绍一下单点登录.单点登录: ...

  2. JavaWeb跨域单点登录

    B/S架构前后端分离项目实现跨域单点登录方案设计 项目需求: 1.前后端分离项目,由后端实现会话管理,同时校验用户权限: 2.多个项目单点登录,允许跨域访问: 3.预留CS架构客户端点击按钮打开浏览器 ...

  3. cas跨域单点登录原理_CAS实现SSO单点登录原理

    1.      CAS 简介 1.1.  What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨 ...

  4. 跨域单点登录方案实现

    SSO英文全称Single Sign On,单点登录.当我们搜索单点登录的时候,会发现很多的文章,然而这些文章一般都是基于一种通用的场景描述,通常在各自的业务环境会更加复杂.在本篇文章,我将描述具体场 ...

  5. SSO跨域单点登录实现方案

    SSO简介 定义: 传统的单站点登录访问授权机制是:登录成功后将用户信息保存在session中,sessionId保存在cookie中,每次访问需要登录访问的资源(url)时判断当前session是否 ...

  6. php跨域单点登录,SSO单点登录、跨域重定向、跨域设置Cookie、京东单点登录实例分析...

    SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1. 跨域redirect实例: te ...

  7. cas跨域单点登录原理_基于CAS的SSO单点登录-实现ajax跨域访问的自动登录

    先补课,以下网址可以把CAS环境搭起来. [问题背景]两个系统的整合就不说了,简单来说就是网页放在NginX上,但是ajax调用tomcat的API获取数据,其中tomcat段用CAS做身份认证.具体 ...

  8. 夸域单点登录解决方案

    这里采用独立验证中心的方式实现,只要认证中心登录,就认为其他系统都登录.登录页面在验证中心,采用一账通登录方式.其他系统不再需要单独的登录页面.接下来把流程图贴上 接着用户又访问域名B下的系统,其流程 ...

  9. 利用cookie的跨域单点登录的简单实现

    Configuration: 1. Web.Config 在两个站点的配置配置文件machine节点上相同的validationKey, decryptionKey and validation的值, ...

  10. 单点登录解决方案CAS

    #单点登录解决方案CAS ##一.单点登录 ​ 单点登录SSO,实现跨域登录.当用户第一次访问系统的时候,会被引导进入认证系统中进行登录:根据用户提供的登录信息,认证系统进行身份校验,如果通过校验,应 ...

最新文章

  1. python是高级动态语言_Python动态语言之魅力揭秘
  2. FQND之联想--username@host.domain跟进
  3. 学会这几个Redis技巧,让你的程序快如闪电
  4. linux select read阻塞_linux下的IO模型详解
  5. 3000米排名预测(全排列+判断)
  6. asp.net mvc批量删除的实现
  7. AspNetCore应用注意这一点,CTO会对你刮目相看
  8. js 面向对象 继承
  9. 少儿编程scratch系统介绍(附网站源码)
  10. JavaScript里的闭包(摘自JavaScript高级程序设计)
  11. 福建等保测评五流程,收藏收藏
  12. 流媒体 - 02 常用命令(gst+ffmpeg+v4l2)
  13. 手机低端市场,联发科 vs 高通
  14. Blender新手入门试水作品:Low poly版敲击兽
  15. python求解不等式组可行域_二元一次不等式(组)和可行域
  16. csdn markdown编辑器设置字体大小和颜色换行
  17. html css星级评分,纯css实现星级评分效果
  18. 2048 php 存盘,PHPMyAdmin上传限制2048K 2M 的解决方法
  19. 【Git CMD】Git常用命令总结
  20. 高数_证明_最值定理

热门文章

  1. 计算机毕业设计ssm基于远程协作的汽车故障诊断系统t6ipg系统+程序+源码+lw+远程部署
  2. rtk手簿Android代码,中海达rtk手机测量软件(Hi-Survey Road)
  3. [C语言] 常量与变量
  4. 13.敏捷组织转型四步法之3 - 通过MoMoKo模型推进业务敏捷
  5. 用c语言编写的源文件 若没有产生编译错误,MSE C语言第一章习题
  6. 如何设置需要密码才能访问的共享文件夹?
  7. 手机取证设备(手机点验设备、手机合规检测、双路并行手机取证深度分析系统、手机点验数据恢复)
  8. 新团队团队融合研讨会_新的网络研讨会:如何避免持续交付的隐性成本
  9. sl4a库_sl4a之pythonapi中文参考
  10. 手机里重力感应器和陀螺仪的区别