如何使用Asp.net Identity MVC5 Web应用程序跟踪用户登录



我需要在MVC5 Web应用程序上跟踪用户登录到MS Sql server数据表的asp.net身份,这是实现这一目标的最佳方法。

如果您像本教程中描述的那样实现了应用程序的身份验证部分,那么可以在触发跟踪的位置很容易找到,就在调用SignInManager.PasswordSignInAsync之后。我建议跟踪所有的尝试,而不仅仅是成功的登录。有几种方法可以做到这一点,这完全取决于你现有的架构,你已经使用的框架等。如果你还没有任何东西,你可以按照这个教程来获得一个实体框架数据上下文,并在MVC5中运行,但你会创建一个实体,它具有跟踪用户登录的所有有用字段(例如时间戳,用户名和登录尝试的结果),例如:

public enum LoginResult
{
   Success,
   LockedOut,
   RequiresVerification,
   Failure
}
public class UserLogin
{
   public DateTime DateTime { get; set; }
   public LoginResult LoginResult { get; set; }
   public string Username { get; set; }
}

,你只需添加到你的数据上下文:

var appContext = new AppContext();
appContext.UserLogins.Add(new UserLogin { DateTime = DateTime.UtcNow, LoginResult = result /* Depending of result */, Username = model.EMail });
appContext.SaveChanges();

这是非常简化的,但是你明白了。当然,这将花费你一些进一步的研究和开发。

相关内容

  • 没有找到相关文章

最新更新