日期:2014-05-18  浏览次数:20565 次

|M| 求ASP.NET 单点登录的编程思想和实现
|M|   用孟子E章的单点登录代码   再加上Cookies   来实现单点登录   大家看看可以怎么再改进  
http://community.csdn.net/Expert/topic/5719/5719919.xml?temp=.6906855

|M|   如何让一个Cookies的过期时间和Session[ "Login "]   过期一样  
http://community.csdn.net/Expert/topic/5724/5724416.xml?temp=.6389887

谢谢

------解决方案--------------------
给你一个建议

我们假设Session是15分钟过期,也知道Session是最近一次有活动之后的15分钟后过期

那么我们写一个基类或是一个httpmoudle ,在代码中 中,我们只需要每次得到这个Cookie,然后把它的过期时间延长15分钟既可,其它的类续承他,或是webconfig中引用这个httpmoudle既可

------解决方案--------------------
Session[ "Login "] 去掉写在Cookies里面,再说了一个网站最好要么只用Cookies,要么其它
------解决方案--------------------
学习
------解决方案--------------------
up
------解决方案--------------------
关注
------解决方案--------------------
mark
------解决方案--------------------
我以前写的单点登录是在数据库加字段标识,既然牵扯到数据库,效率肯定不够好

如果是不用数据库的就要用户一定要点击注销按钮,否则下次要先清空cookie,也不是什么好的解决方案。
------解决方案--------------------
给你一个,自己去看吧
http://blog.csdn.net/cityhunter172/archive/2005/12/06/545301.aspx
------解决方案--------------------
我是把session写在url上,这样就可以不用cookies了。不过还是要保存在数据库中。
------解决方案--------------------
mark
------解决方案--------------------
up

------解决方案--------------------
步知道你做过java没有!SSO有很多成熟的框架!你可以学习学习里面的思想
------解决方案--------------------
我说的单点不是多个应用程序登录一样
而是同一个用户当前只能一个登录
--------------
如果要实现可以在数据库中加个字段标记用户是否登录,每次登录进行判断就行
------解决方案--------------------
xue xi
------解决方案--------------------
难点就是如果判断用户何时下线,多久循环一次在线用户表,下线多久后能重新登录
一般是15分钟后可以重新登陆
------解决方案--------------------
后台
1. 每次登录后在Session中保存一个GUID比如Session[ "SessionID "]= "FE1823...... "
2. 这个SessionID需要保存在表中,表结构字段(UserID, SessionID, Tag)。
3. 判断表中是否已经存在同用户名的SessionID?如果存在,给这个SessionID一个下线的标志

前台
1. 每个页面加载前或有一个AJAX自动判断当前SessionID是否给与下线标
2. Session结束时中从SessionID表中删除这个SessionID的记录

------解决方案--------------------
技术上,我就不说了,网上有太多的文章了。

我说一些费话。

一个用户(A),他有正确的账户名和一个正确的密码,他算不算是合法用户??我想算吧。

那么,又有一个用户(B),他也有正确的账户名和一个正确的密码,他算不算是合法用户??我想也算吧。

那么,Lz,你要实现的单点对于以上情况是什么标准呢??是A能上时,B能上呢,还是只能有一

个人能在线呢??我建议采取“只能有一个人能在线”{最初的单点思想,就是保证用户的唯一

性,不是吗?},解决方法就是,当A在线时,B如果要上则,B代替A{A将不能以用户身份操

作},反之一样。

也许你会反对,但我只说一句话“一个账户可能有两个持有都吗?实际中,没人愿意共同持有一

个帐户。”


说到这,如果按我的说法,用Cookie以与Cache就可能了{Cache中保存着最新的用户的ID号和随机数[只有随机数相同才能有权操作系统。]}

希望对LZ有帮助。
------解决方案--------------------
如果有不同看法可以给我发CSDN的信息
------解决方案--------------------
mark