一次一个用户

时间:2010-05-12 09:47:21

标签: .net asp.net login login-control autologin

我正在尝试实现只有一个用户可以使用给定的凭据登录。

我在登录时使用以下代码检查:

MembershipUser objectUser = Membership.GetUser(Login1.UserName);
    if (objectUser != null)
    {
        boolIsAlreadyLoggedIn = objectUser.IsOnline;
    }

这很好用。我有问题,当用户选中记住我时。 场景: 1.如果用户使用“记住我”进行登录。关闭浏览器。 2.现在从另一台机器或其他浏览器使用相同的凭据登录。他可以登录。 3.但是如果用户再次从Browser-1 / machine-1登录,他可以登录,因为浏览器有持久cookie。

有人可以建议我如何解决这个问题?

先谢谢

1 个答案:

答案 0 :(得分:0)

我假设cookie包含每个登录会话ID。只需确保每个用户一次只能与一个会话ID相关联。每个新登录都会使用新帐户替换该用户的任何现有会话ID。当然,使用过期会话ID的任何请求都会直接进入“未登录 - 您可能已登录其他位置”页面。