我需要在使用Asp.Net Identity 2实现的asp.net MVC 5应用程序中构建自定义用户密码检查。
我在stackoverflow上阅读了一篇文章(编写Identity 2.1中的自定义IUserPasswordStore和SignInManager.PasswordSignInAsync),它说我只需要覆盖UserManager中的CheckPasswordAsync方法。
我尝试在IdentityConfig.cs文件中覆盖此方法。以下是我添加到ApplicationUserManager类的代码,仅用于测试此解决方案:
public override async Task<bool> CheckPasswordAsync(ApplicationUser user, string password)
{
return await Task.Run(() => {
return true;
});
}
问题在于这段代码在登录过程中从未运行,登录始终失败。为了登录用户,我使用SignInManager.PasswordSignInAsync来登录用户,在创建asp.net MVC 5 web应用程序时,这是默认设置。这个方法难道不应该调用ApplicationUserManager.CheckPasswordAsync吗?或者还需要其他配置才能使其工作?