Asp.net防止用户多次登录?注:我是使用cookie来保存用户信息的

wangjinpeng_job 2010-02-02 11:26:40
Asp.net防止用户多次登录?注:我是使用cookie来保存用户信息的,也就是说 没有用session,
有什么办法能够解决呢?
...全文
322 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
jqh175145 2010-11-14
  • 打赏
  • 举报
回复
关注!!!
  • 打赏
  • 举报
回复
先判断登录端得保存Cookie名是否为空 如不为空则检查其中保存的值是否已经登录过 true 则弹出对话框
aihui109 2010-02-02
  • 打赏
  • 举报
回复
只用cookie限制相同帐号多台电脑登陆是行不通的。
必须要在服务器保存登陆状态。
wangjinpeng_job 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zengzhan 的回复:]
C# code//1用户登录系统时,分配一个GUID给他。如果是用户是首次登录就往Application["OnlineUserList"]中添加一条记录,下次再登录,系统会重新分配一个新GUID,修改已存在的记录值。//2判断客户端保存的cookie["UserOnlineID"] 值是否与服务端一致,如果不一致,则重定向到重复登录页面
[/Quote]

如何为其分配 一个GUID ? 有什么 好的办法?
wangjinpeng_job 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zengzhan 的回复:]
C# code//1用户登录系统时,分配一个GUID给他。如果是用户是首次登录就往Application["OnlineUserList"]中添加一条记录,下次再登录,系统会重新分配一个新GUID,修改已存在的记录值。//2判断客户端保存的cookie["UserOnlineID"] 值是否与服务端一致,如果不一致,则重定向到重复登录页面
[/Quote]

能说的 再 具体一点吗?
谢谢!
qqzeng-ip 2010-02-02
  • 打赏
  • 举报
回复
 //1用户登录系统时,分配一个GUID给他。如果是用户是首次登录就往Application["OnlineUserList"]中添加一条记录,下次再登录,系统会重新分配一个新GUID,修改已存在的记录值。
//2判断客户端保存的cookie["UserOnlineID"] 值是否与服务端一致,如果不一致,则重定向到重复登录页面
wangjinpeng_job 2010-02-02
  • 打赏
  • 举报
回复
是这样的 , 我是想 防止这种情况发生 。。。 不知道 该如果 操作了
RUNBEAR 2010-02-02
  • 打赏
  • 举报
回复
用cookie,那不是如果用户在不同电脑登陆也行了咯?
wangjinpeng_job 2010-02-02
  • 打赏
  • 举报
回复
注意是cookie 来保存用户信息的。
wapit 2010-02-02
  • 打赏
  • 举报
回复
我看还是在数据库加个字段记录一个GUID吧. 后面登录的把前面的顶下去
V-Far 2010-02-02
  • 打赏
  • 举报
回复
基本上面的都说了.
要不就先判断是否已经登陆,如果登陆就不让用户进入(这样不好,非常不好),特别是异常关闭浏览器的情况下
要不就后登陆的把之前的挤下去
lighwind 2010-02-02
  • 打赏
  • 举报
回复
能不能在数据库中设置一个会员状态的字段啊,判断一下这个字段的值如果说已经登陆就给他一个提示,当退出的时候 修改一下这个字段的值
鸭梨山大帝 2010-02-02
  • 打赏
  • 举报
回复
单点登录,心跳包
每隔一段时间客户端向服务器端发送心跳包,证明其活着.
当该用户在某台电脑上没死之前,服务器判断该用户不能在其他电脑上登录.
当该用户主动结束(登出),或者被动死亡(一定时间内再也接受不到心跳包,让其死亡).
此时用户可在其他电脑上登录,然后循环判断.结束
==========================
处理异常也是一样,当用户非正常死亡(死机,挂球)的时候,重复这个"一定时间内再也接受不到心跳包,让其死亡"

[Quote=引用 15 楼 wangjinpeng_job 的回复:]
。。。 还是再等等 , 看看有没有高手能把这分都得了。
[/Quote]
wangjinpeng_job 2010-02-02
  • 打赏
  • 举报
回复
。。。 还是再等等 , 看看有没有高手能把这分都得了。
wangjinpeng_job 2010-02-02
  • 打赏
  • 举报
回复
我也是简单的用application 做了一下限制, 肯定存在不足之处,不过能对付一下,这帖结了吧 大家都得分。。。
nick207 2010-02-02
  • 打赏
  • 举报
回复
MS论坛上就没有提过一种有效的解决方案 尤其是浏览器意外关闭的情况
RYAN--333 2010-02-02
  • 打赏
  • 举报
回复
关注...
ovenj 2010-02-02
  • 打赏
  • 举报
回复
以前也遇到这种问题,试了很多方法,但都没能够避免浏览器异常关闭问题,总是存在不足之处,最后也是不了了之了
gxq323 2010-02-02
  • 打赏
  • 举报
回复
简单个毛,只能是后进去的用户把前面的用户顶下去,其他的方法基本不可行,总有bug
wuyq11 2010-02-02
  • 打赏
  • 举报
回复
单点登录
心跳
加载更多回复(1)

62,042

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧