我有一个简单的要求,不允许用户一次登录多个浏览器。同一个浏览器就好了。
可以做的最简单的事情是什么?
技术:.net 4.0 和 sql sever 2008 R2
我有一个简单的要求,不允许用户一次登录多个浏览器。同一个浏览器就好了。
可以做的最简单的事情是什么?
技术:.net 4.0 和 sql sever 2008 R2
请参阅以下我的建议:
LastActivityDate
。如果您使用的是 asp.net SqlMembershipProvider
- 该字段存在于那里,如果您使用其他身份验证机制 - 可能您需要创建它并根据特定用户的每个请求进行更新。LoggedIn
。当用户登录时,该字段将设置为 true。如果您使用的是 asp.net SqlMembershipProvider
,则可以将其值存储在Comment
字段中。LoggedIn
字段设置为false
. 为此使用window.onbeforeunload
javascript 事件。LoggedIn
用户的字段,如果它是错误的 - 您只需处理操作。如果不是 - 你应该检查LastActivityDate
值,如果它比超时更早,你将定义(比如说 3 分钟)处理操作。如果不是 - 拒绝它并显示错误消息。此附加检查是必需的,因为我们无法保证window.onbeforeunload
始终执行该检查。LastActivityDate
. 此脚本应在登录用户可访问的每个页面上定义。我希望方法是明确的。