单点登录(二)使用Cookie+File实现单点登录登出(附源码)

上一篇文章《单点登录(一)使用Cookie+File实现单点登录》中,我们实现了单点登录的功能。

本文作为上一篇文章的扩展部分,添加“单点登出”功能。

源码下载:链接: http://pan.baidu.com/s/1bn57xCF 密码: 5apa

本例实现效果

浏览器中输入网址:main.tgb.com,后输入用户名:it_main(以it开头即可)和密码pwd_main(以pwd开头即可),勾选“一周内自动登录”。点击“登录”按钮。即可实现单点登录功能。访问关联的网站,点击news.tgb.com/bbs.tgb.com,则无需输入:用户名和密码。点击“安全退出”按钮,则3个网站同时退出。

实现原理

首次登录main网址,需要输入用户名和密码。验证通过后,将在Cookie中保存一份用户名和密码(3网址公用的),同时保存有一份Session(只针对于main的session)。当访问关联网站(如:news)时,首先从关联网站中查询各自的session(如news的session)中是否包含用户名和密码,若session为空,则查询cookie中的值,并赋值给关联网站的news的session,此时访问news网址时,无需登录。

单击“安全退出”,则清空Cookie,同时清空3个网址的session。此时,若仍想登录网站,必须重新输入用户名和密码。

点评

利用Cookie和Filter实现的单点登录,有其局限性【main.tgb.com   news.tgb.com   bbs.tgb.com 】,只能针对于域名为“.tgb.com”的网址进行共享。

若要实现不同域名之间的单点登录【如:main.com   news.com   bbs.com】,请参加下一篇文章..........

操作步骤

1.在C:\Windows\System32\drivers\etc中的hosts文件中,添加如下节点(直接添加在文件最后即可):

127.0.0.1  bbs.tgb.com

127.0.0.1  news.tgb.com

127.0.0.1  main.tgb.com

2.在C:\tomcat\apache-tomcat-6.0.35\conf\server.xml中修改HTTP/1.1中的默认端口:由8080改为80,如下所示:

<Connector connectionTimeout="20000"
port="80" protocol="HTTP/1.1" redirectPort="8443"/>

3.将main.zip,news.zip,bbs.zip解压后,直接拷贝到apache-tomcat-6.0.35中。

4.启动tomcat,如: C:\tomcat\apache-tomcat-6.0.35\bin中双击startup.bat命令

5.浏览器中输入:main.tgb.com

6.输入用户名:it_main(以it开头即可)和密码pwd_main(以pwd开头即可),勾选“一周内自动登录”。点击“登录”按钮。

7.访问关联的网站,点击news.tgb.com/bbs.tgb.com,则无需输入:用户名和密码。

8.查看浏览器中Cookie和Session中的值

9.点击“安全退出”按钮,则3个网站同时退出。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-07-29 23:21:14

单点登录(二)使用Cookie+File实现单点登录登出(附源码)的相关文章

单点登录(一)使用Cookie+File实现单点登录

本文使用Cookies+Filter实现www.taobao.tgb.com 和 www.tianmao.tgb.com的单点登录. 源码分享:链接: http://pan.baidu.com/s/1eQheDpS 密码: gn9d 一 实现原理 使用用户名和密码登录taobao后,会将用户名存储在Session和Cookie中各一份.当用户登录tianmao时,可直接从Cookie中获取用户名和密码,不需要二次登陆. 二 知识点解析 1.本例使用tomcat做服务器,绑定1个域名,且此域名对应

C# winform 实现微信二维码登录、第三方登录(已实现、附源码)

原文:C# winform 实现微信二维码登录.第三方登录(已实现.附源码) 前言 应上级要求,在项目登录的时候实现第三方登录.很荣幸我接到了这个任务,但是我之前完全都没接触到.开发周期是三天,对于我们这种小白完全是从零开始.最后成功的实现这个功能固然重要,但是这个探索的过程才值得回味.光需要代码可以直接下载源码,我们重要说下实现过程和步骤,自己也巩固和记录一下! 实现步骤 1. 我实现的是微信扫码登录,当然要知道微信给的接口,可以在https://open.weixin.qq.com/ 这里申

3种精美Web前端搜索框展示(附源码)(二)

4.  CSS3响应式伸缩搜索框 能在支持 FireFox.Chrome.Safari.傲游.搜狗.360浏览器. 源码下载 /   在线演示 5.  css3带搜索框下拉菜单 源码下载 /   在线演示 6.  jQuery当乐网搜索下拉框 源码下载 /   在线演示 3种精美Web前端搜索框展示(附源码)(二)

7个播放器效果展示(附源码)(一,二,三,四)

1.  HTML5+CSS3自定义视频播放器实现物理效果 源码下载/  在线演示 2.  html5触发式音频播放 这个插件集成了一些非常好的 JavaScript 库,提供一个方便使用的文本动画插件. 源码下载 /  在线演示 3. html5+css3酷炫音频播放器 源码下载/  在线演示 4.  css3迷你播放器面板 能在支持 FireFox.Chrome.Safari.傲游.搜狗.360浏览器. 源码下载/  在线演示 7个播放器效果展示(附源码)(一,二,三,四)

cocos2d-x 委托模式的巧妙运用——附源码(二)

转载请注明出处:http://blog.csdn.net/hust_superman/article/details/38292265,谢谢. 继上一篇将了委托类的具体实现后,这篇来将一下如何在游戏中使用实现的委托类.也就是如何在游戏中来调用委托类来完成一些功能.具体的应用场景和应用层会在下面介绍. 先来看一看游戏demo实现的具体图片,demo比较简单,但是资源齐全,拿到源码后可以在源码的基础上继续完善demo做出一款真正的游戏.好了,老规矩,先上图再说: 游戏中点击播放按钮后会进入游戏主界面

SSO 单点登录解决方案(附源码)

主要特性 1.只支持同一会话的单点登录,新建会话需要重新登录,用户可以同时登录多个账号. 2.支持单点登出 3.TokenID与SessionID绑定,不能直接通过TokenID的Url登录 4.用户登录的凭证信息使用Memcached持久化 源码和Memcached安装包下载地址 链接: http://pan.baidu.com/s/1c04Suty 密码: bb2p Memcached 安装配置可以参考这篇博文:http://www.cnblogs.com/stone_w/p/4755537

Servlet学习(三)Servlet编程实例-网站登录(修改版-增加数据库-附源码)

我们为刚才的那个示例Servlet学习(二)Servlet编程实例-网站登录添加上数据库,组成一个较为完整的登录功能. 在开始之前我们得首先了解下一些常用的java术语: PO(persistant object) 持久对象 在o/r 映射的时候出现的概念,如果没有o/r映射,就没有这个概念存在了. 通常对应数据模型(数据库),本身还有部分业务逻辑的处理. 可以看成是与数据库中的表相映射的java对象. 最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合. PO中应该不包含

【原创】.NET平台机器学习组件-Infer.NET连载(二)简单贝叶斯分类器的例子—【附源码和自制帮助文档】

Infer.NET机器学习翻译系列文章将进行连载,感兴趣的朋友请收藏或关注 你还可以参考本博客其他.NET开源项目的相关文章: [原创]彩票预测算法:离散型马尔可夫链模型          Newlife XCode组件资源目录汇总[2013年版] [原创]开源.NET下的XML数据库介绍及入门          [原创].NET开源压缩组件介绍与入门 [开源].NET开源表达式计算组件介绍与使用          [原创]开源Word读写组件DocX介绍与入门 [原创]Matlab.NET混编

MVC系列——MVC源码学习:打造自己的MVC框架(二:附源码)

前言:上篇介绍了下 MVC5 的核心原理,整篇文章比较偏理论,所以相对比较枯燥.今天就来根据上篇的理论一步一步进行实践,通过自己写的一个简易MVC框架逐步理解,相信通过这一篇的实践,你会对MVC有一个更加清晰的认识. 本文原创地址:http://www.cnblogs.com/landeanfen/p/6000978.html 这篇博主打算从零开始一步一步来加上MVC里面用到的一些技术,整篇通过三个版本,逐步完善. 一.版本一:搭建环境,实现MVC请求 通过上篇的介绍,我们知道,MVC里面两个最