如何确保一个用户只在一台机器上登录?[英] How to ensure one user login in only one machine?

本文是小编为大家收集整理的关于如何确保一个用户只在一台机器上登录?的处理方法,想解了如何确保一个用户只在一台机器上登录?的问题怎么解决?如何确保一个用户只在一台机器上登录?问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

ASP.NET应用中如何保证一个用户只能登录一台机器?

如果用户登录一台机器并尝试登录另一台机器,则应显示一个弹出窗口,提示"想要从其他登录的系统注销?".如果是,则应终止其他会话并允许登录当前系统.如何做到这一点?请指导我.

推荐答案

你好,

据我了解,您只需要一个用户登录实例.
1.您的登录表中可以有一列作为IsLoggedin.
2.用一个像''Y''这样的标志来更新这个,以指示用户何时登录.
3.当用户尝试从其他系统登录时,请检查此标志以及凭据,如果标志不是''Y'',则允许登录.
4.否则,显示消息以注销活动会话.


希望这会有所帮助.

首先在您的应用程序启动中创建一个字典集合并将其添加到应用程序而不是会话.

然后获取用户pc的IP地址:

字符串 ipaddress;ipaddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];if (ipaddress == "" || ipaddress == null)ipaddress = Request.ServerVariables["REMOTE_ADDR"];



用户登录时 检查您的应用程序字典集合中的用户名.如果用户名和 IP 地址与存在相同,则继续登录.如果不存在,则添加该对并登录.如果用户名存在但 ip 地址与当前不同,则弹出用户已登录其他电脑的消息.

本文地址:https://www.itbaoku.cn/post/1356126.html