单点登录(二)使用Cookie+File实现单点登录登出(附源代码)
上一篇文章《单点登录(一)使用Cookie+File实现单点登录》中,我们实现了单点登录的功能。
本文作为上一篇文章的扩展部分,加入“单点登出”功能。
源代码下载:链接: http://pan.baidu.com/s/1bn57xCF password: 5apa
本例实现效果
浏览器中输入网址:main.tgb.com,后输入username:it_main(以it开头就可以)和passwordpwd_main(以pwd开头就可以),勾选“一周内自己主动登录”。点击“登录”button。就可以实现单点登录功能。訪问关联的站点,点击news.tgb.com/bbs.tgb.com。则无需输入:username和password。点击“安全退出”button,则3个站点同一时候退出。
实现原理
首次登录main网址,须要输入username和password。验证通过后,将在Cookie中保存一份username和password(3网址公用的),同一时候保存有一份Session(仅仅针对于main的session)。当訪问关联站点(如:news)时。首先从关联站点中查询各自的session(如news的session)中是否包括username和password,若session为空,则查询cookie中的值,并赋值给关联站点的news的session,此时訪问news网址时。无需登录。
单击“安全退出”。则清空Cookie,同一时候清空3个网址的session。此时,若仍想登录站点,必须又一次输入username和password。
点评
利用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中的默认port:由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.输入username:it_main(以it开头就可以)和passwordpwd_main(以pwd开头就可以),勾选“一周内自己主动登录”。
点击“登录”button。
7.訪问关联的站点,点击news.tgb.com/bbs.tgb.com。则无需输入:username和password。
8.查看浏览器中Cookie和Session中的值
9.点击“安全退出”button。则3个站点同一时候退出。
- 单点登录(一)使用Cookie+File实现单点登录
- 单点登录(二)使用Cookie+File实现单点登录登出(附源码)
- 单点登录(一)使用Cookie+File实现单点登录
- 单点登录详解(一)--使用Cookie+Filter实现单点登录
- session和cookie的使用方法、区别,和分别实现验证登录状态
- 使用filter + cookie实现单点登录
- php使用cookie实现记住登录状态
- 一个使用监听器模式实现的J2ME网络编程框架,包括一个简单的登录功能实现(含源代码)
- 使用cookie实现跨域系统单点登录
- JavaWeb_使用Cookie模拟实现自动登录
- 使用COOKIE对像实现保存用户基本信息(结合Session),ASP.Net实现用户登录全过程
- PHP 使用cookie实现记住登录状态
- 使用cookie+Filter实现单点登录
- 引用 使用Session和Cookie实现网站自动登录
- 使用cookie实现一周内自动登录
- 使用cookie实现跨域系统单点登录
- (系统框架之单点登录)使用 CAS 在 Tomcat 中实现单点登录
- symfony使用cookie来实现自动登录
- java使用cookie实现下次自动登录
- 使用cookie实现跨域登录