自己动手写SSO(单点登录)】的更多相关文章

第一次写博客,与大家共勉. 这里用到的原理其实非常简单,将cookie存在一个公共的站点的页面上就可以了,这里我们管那个站点叫主站S. 先说说所谓的跨域 环境1:a.xxx.com需要跟b.xxx.com实现跨域,这种比较简单,只需要设置cookie的域名关联域就可以了 cookie.Domain = "xxx.com",这样两个域名间的cookie就可以互相访问,实现跨域. 环境2:a.aaa.com需要跟b.bbb.com实现跨域,这种不同域名的情况下,想要实现就必须换种方式了.…
转:http://blog.csdn.net/ae6623/article/details/8861065 SSO单点登录系列4:cas-server登录页面自定义修改过程,全新DIY. 目标:    下面是正文: 打开cas的默认首页,映入眼帘的是满眼的中文and英文混杂体,作为一名合格的用户,我表示很不开心. 于是,打开 Nodepad++,寻找C:\tomcat7\webapps\casServer\WEB-INF\view\jsp\default\ui \casLoginView.jsp…
SSO(单点登录)与旅游年卡 SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制.它是目前比较流行的企业业务整合的解决方案之一.(来自百度百科) 旅游年卡:一次办卡,多个景点游玩.避免了每个景点排队买票浪费时间影响心情. 我喜欢逛,07年广州一行让我爱上了旅行.十年间转战祖国大江南北.东到浙江苏州上海,南到广东珠海澳门,西到宜昌长江三峡,北到首都长…
之前发布过使用session+cookie实现的单点登录,博主个人用的很不舒服,为什么呢,博主自己测试的时候,通过修改host的方法,在本机发布了三个站点,但是,经过测试,发现,三个站点使用的session会互相干扰,导致测试失败,最后通过部署到外网才得以解决. 那么,我就想,能不能找个东西来代替session呢,于是我就想到了Redis/Memory缓存的方式,大家都知道,关于Redis,一个部署了Redis的服务器,默认在Redis中有16个数据库,索引是0~15,那么,能不能用三个站点连接…
前言 作为分布式项目,单点登录是必不可少的,文本基于之前的的博客(猛戳:SpringCloud系列——Zuul 动态路由,SpringBoot系列——Redis)记录Zuul配合Redis实现一个简单的sso单点登录实例 sso单点登录思路: 1.访问分布式系统的任意请求,被Zuul的Filter拦截过滤 2.在run方法里实现过滤规则:cookie有令牌accessToken且作为key存在于Redis,或者访问的是登录页面.登录请求则放行 3.否则,将重定向到sso-server的登录页面且…
单点登录(SSO——Single Sign On)对于我们来说已经不陌生了.对于大型系统来说使用单点登录可以减少用户很多的麻烦.就拿百度来说吧,百度下面有很多的子系统——百度经验.百度知道.百度文库等等,如果我们使用这些系统的时候,每一个系统都需要我们输入用户名和密码登录一次的话,我相信用户体验肯定会直线下降.当然,对于个人博客这类系统来说根本就用不上单点登录了. 假如,我们的系统很庞大,但是就是这一个系统,并没有什么子系统.这时我们也不需要单点登录.我们需要的是搭建集群环境,这里虽说只有一个系…
1.因为是本地模拟sso环境,而sso的环境测试需要域名,所以需要虚拟几个域名出来,步骤如下: 2.进入目录C:\Windows\System32\drivers\etc 3.修改hosts文件 127.0.0.1  jeesz.cn 127.0.0.1  sso1.jeesz.cn 127.0.0.1  sso2.jeesz.cn 4.生成认证证书 注意:我们可以根据sso单点登录的架构图可以看到,在客户端和服务端进行交互的时候,是需要认证的,在这里我们使用jdk中的keytool方案生成证书…
1.因为是本地模拟sso环境,而sso的环境测试需要域名,所以需要虚拟几个域名出来,步骤如下: 2.进入目录C:\Windows\System32\drivers\etc 3.修改hosts文件 127.0.0.1  jeesz.cn 127.0.0.1  sso1.jeesz.cn 127.0.0.1  sso2.jeesz.cn 4.生成认证证书 注意:我们可以根据sso单点登录的架构图可以看到,在客户端和服务端进行交互的时候,是需要认证的,在这里我们使用jdk中的keytool方案生成证书…
前面几篇分享了nosql只mongodb,今天简单分享另一个nosql神兵redis. 主要模仿sso单点登录,将登录人信息写入redis.话不多说,直接上马,驾. /// <summary> /// /// </summary> /// <param name="name"></param> /// <param name="pass"></param> /// <returns>…
最近在研究SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1.jquery ajax跨域重定向,要理ajax解跨域重定向,先要了解浏览器对重定向的处理.正常我们请求一个地址,如果server返回302,那么浏览器会再发起一次重定向后的http请求:用jquery ajax发起一次异步请求,server返回302,如果重定后url的域名跟ajax请求的域名是同一个域名的话,浏览器会再发…
SSO介绍 什么是SSO 百科:SSO英文全称Single Sign On,单点登录.SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制.它是目前比较流行的企业业务整合的解决方案之一. 简单来说,SSO出现的目的在于解决同一产品体系中,多应用共享用户session的需求.SSO通过将用户登录信息映射到浏览器cookie中,解决其它应用免登获取用户session的问题. 为什么需要SSO 开放平台业务本…
单点登录(SSO——Single Sign On)对于我们来说已经不陌生了.对于大型系统来说使用单点登录可以减少用户很多的麻烦.就拿百度来说吧,百度下面有很多的子系统——百度经验.百度知道.百度文库等等,如果我们使用这些系统的时候,每一个系统都需要我们输入用户名和密码登录一次的话,我相信用户体验肯定会直线下降.当然,对于个人博客这类系统来说根本就用不上单点登录了. 假如,我们的系统很庞大,但是就是这一个系统,并没有什么子系统.这时我们也不需要单点登录.我们需要的是搭建集群环境,这里虽说只有一个系…
单点登录以及权限,在很早之前都有写过,不过都比较简单,今天就具体说一下,以及下一步要做的 1.web单系统应用 早期我们开发web应用都是所有的包放在一起打成一个war包放入tomcat容器来运行的,所有的功能,所有的业务,后台管理,门户界面,都是由这一个war来支持的,这样的单应用,也称之为巨石应用,因为十分不好扩展和拆分. 在巨石应用下,用户的登录以及权限就显得十分简单,用户登录成功后,把相关信息放入会话中,HTTP维护这个会话,再每次用户请求服务器的时候来验证这个会话即可,大致可以用下图来…
落雨 cas 单点登录 SSO单点登录系列4:cas-server登录页面自定义修改过程,全新DIY. 目标:    下面是正文: 打开cas的默认首页,映入眼帘的是满眼的中文and英文混杂体,作为一名合格的用户,我表示很不开心. 于是,打开Nodepad++,寻找C:\tomcat7\webapps\casServer\WEB-INF\view\jsp\default\ui\casLoginView.jsp这个页面,开始了我的改造之旅,作为一名合格的分享ser,我表示全程都会转化为文档,方便以…
配置服务端(链接数据库) 第一步: 下载cas-server端,解压开, 将中的解压开,将该包中的内容放入cas文件夹(新建文件夹)中 然后将这个文件夹放入到服务端的服务器(tomcat)中 将解压开的文件夹中的 放入的WEB-INF 下的lib 目录中 第二步:打开x:\xxxxx\webapps\cas\WEB-INF的deployerConfigContext.xml并编辑 加入以下代码(注意:顺序不要放错了) 第三步:在C:\Windows\System32\drivers\etc的ho…
NET Core 2.0使用Cookie认证实现SSO单点登录 之前写了一个使用ASP.NET MVC实现SSO登录的Demo,https://github.com/bidianqing/SSO.Sample,这个Demo是基于.NET Framework,.NET Core 2.0出来了试着使用ASP.NET Core尝试一下.假如我们有三个站点 domain.dev order.domain.dev passport.domain.dev domain.dev作为我们的主站肯定是可以匿名访问…
SSO (Single Sign On) 什么是单点登录: 在大型的互联网公司中会有多个系统, 多个项目, 虽然这些项目都属于同一家公司, 但是项目本身其实都是独立的, 那多个系统可不可以实现共享同一份用户认证数据呢? SSO单点登录就是做这件事, 各个项目之间彼此相互信任, 在其中任意一个系统中进行登录, 用户的认证信息会被缓存在用户本地, 当用户去访问其他站点时, 可以复用这份认证信息,而免去了重新登录的麻烦, 提高用户体验感 xxl单点登录实现的逻辑 其实市面上的SSO框架还是挺多的, x…
目录 一.从Spring Security OAuth2官方文档了解@EnableOAuth2Sso作用 二.源码分析@EnableOAuth2Sso作用 @EnableOAuth2Client OAuth2SsoCustomConfiguration:OAuth2 SSO自定义配置 SsoSecurityConfigurer:OAuth2 SSO核心配置(增强) OAuth2SsoDefaultConfiguration:OAuth2 SSO默认配置 ResourceServerTokenSe…
上一篇我根据框架中OAuth2.0的使用总结,画了SSO单点登录之OAuth2.0 登出流程,今天我们看一下根据用户token获取yoghurt信息的流程: /** * 根据token获取用户信息 * @param accessToken * @return * @throws Exception */ @RequestMapping(value = "/user/token/{accesstoken}", method = RequestMethod.GET) public Resp…
敬给读者的话 本节主要讲解freemarker的使用以及sso单点登录系统,两种技术都是比较先进的技术,freemarker是一个模板,主要生成一个静态静态,能更快的响应给用户,提高用户体验. 而sso单点登录系统主要是为了解决分布式架构的一个登录系统,因为分布式架构的每一个模块都是一个项目,那么就需要存在一个session共享的问题,而sso单点登录系统正是为了解决这个问题. 1.使用freemarker实现网页静态化 2.ActiveMq同步生成静态网页 一.freemarker的使用方法…
SSO 即 Single Sign On(单点登录).  一.二级域名之间的单点登录 不需要用到JSONP 或者 p3p 协议,直接使用 COOKIE 就行了,因为顶级域名相同就能实现 COOKIE 共享. 例如有两个项目,域名分别是 www.site1.com 和 mall.site1.com,分别对应的项目目录是 /site1/p3p 和 /site1_origin site1 的登陆页面 /site1/p3p/login.php <!doctype html> <html lang…
1.      CAS 简介 1.1.  What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨在为 Web 应用系统提供一种可靠的单点登录解决方法(属于 Web SSO ). CAS 开始于 2001 年, 并在 2004 年 12 月正式成为 JA-SIG 的一个项目. 1.2.  主要特性 1.   开源的.多协议的 SSO 解决方案: Protocols : Custom Protoc…
一.流程说明 第一步:访问cas过滤链接ssoLogin,拼凑定向到 CAS_SERVER 获取ticket的URL 第二步:CAS_SERVER校验用户信息,生成Ticket 第三步:重新定向到访问客户端的ssoLogin并附加Ticket参数和值 第四步:根据传来的Ticket拼凑定向到CAS_SERVER的连接去校验Ticket的合法性 第五步:CAS_SERVER校验成功后,会返回XML报文并重新定向到访问客户端的ssoLogin 解析该XML报文,构造用户信息对象存储在session中…
原理:就是用户登录了单点登录系统(sso)之后,就可以免登录形式进入相关系统: 实现: 点击登录跳转到SSO登录页面并带上当前应用的callback地址 登录成功后生成COOKIE并将COOKIE传给callback地址 callback地址接收SSO的COOKIE并设置在当前域下再跳回系统到即完成登录 问题: cookie不安全(只能通过加密来解决) cookie不能跨域登录 另外一种方案:可以部署使用ucenter的sso单点登录系统,或者如下图(借鉴别人的) 对于这样的设计的话:对于sso…
学习CAS实现SSO单点登录 网上找了几篇比较详细的教程,在这记录一下: 原理: CAS实现SSO单点登录原理 教程: 1.CAS实现单点登录(SSO)经典完整教程 2.SSO之CAS单点登录实例演示 3.CAS单点登录(SSO)完整教程 有可能出现的问题解决方案: 1.unable to find valid certification path to requested target javax.net.ssl.SSLHandshakeException: sun.security.vali…
1.      CAS 简介 1.1.  What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨在为 Web 应用系统提供一种可靠的单点登录解决方法(属于 Web SSO ). CAS 开始于 2001 年, 并在 2004 年 12 月正式成为 JA-SIG 的一个项目. 1.2.  主要特性 1.   开源的.多协议的 SSO 解决方案: Protocols : Custom Protoc…
sso单点登录,单点登录原理图,单点登录图解,单点登录 ============================== ©Copyright 蕃薯耀 2017年11月20日 http://www.cnblogs.com/fanshuyao/ ============================== ©Copyright 蕃薯耀 2017年11月20日 http://www.cnblogs.com/fanshuyao/…
GitLab11.3.9 的安装方法: 点击查看.   Crowd3.3.2 的安装方法:点击查看.   需要先在 Crowd 创建应用程序,参考 <Docker 创建 Crowd3.3.2 以及打通 Jira Software7.12.3和Confluence6.12.2 SSO 单点登录> 中的 4.12章节,在 Application type 选择 Generic Application, Description 输入Gitlab Applicaton, Name 输入 gitlab,…
目录 目录 1.介绍 1.1.什么是 Crucible? 2.Crucible 的官网在哪里? 3.如何下载安装? 4.对 Crucible 进行配置 4.1.破解 Crucible 第一步 4.2.破解 Crucible 第二步,获取授权许可 4.2.连接到JIRA Connect to JIRA 4.3.设置默认管理员帐号 Set administrator password 4.7.完成安装 Start working with Crucible 4.8.查看破解后的授权信息 4.9.设置…
目录 目录 1.介绍 1.1.什么是Crowd? 2.Crowd 的官网在哪里? 3.如何下载安装? 4.对 Crowd 进行配置 4.1.破解 Crowd 第一步 4.2.破解 Crowd 第二步,获取授权许可 4.2.Crowd 的安装 Crowd installation 4.3.数据库配置 Database configuration 4.4.Crowd 选项 Options 4.5.内部目录设置 Internal directory 4.6.设置默认管理员帐号 Default admi…