我正在开发Asp.Net MVC 5 Razor应用程序。我使用自己的数据库进行身份验证和保存数据。现在我要求具有相同凭据的用户无法登录到不同的设备。 我的意思是用户无法同时从手机和电脑登录。在登录其他设备之前,他必须至少从一台设备注销。
我做过研究,但是徒劳,因为它们大部分用于Web窗体应用程序并使用会员表。
任何帮助?
答案 0 :(得分:2)
不要这样做。当有人清除其浏览器缓存时,他们会丢失与其会话的所有关系,因此他们不再登录,因此无法注销。当他们的IP发生变化时(如果你将会话绑定到IP),他们也无法注销。在登录其他设备之前,他必须至少从一台设备注销。
只需执行此操作:登录后,将使该用户的所有先前会话无效。
如何实现这一点完全取决于您的自定义身份验证的工作方式,因此我无法对此进行评论。