码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-07-16 14:04:00      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:

上一篇文章《单点登录(一)使用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个网站同时退出。

技术分享


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

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

标签:

原文地址:http://blog.csdn.net/zhaolijing2012/article/details/46910033

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!