双因素身份验证 - 身份服务器



我构建了一个使用 Asp.Net Identity的IdentityServer4服务器。然后,我为其中一个用户启用了双因素身份验证。然后我检查了它是否反映了数据库。

现在,当我打电话时,

var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false)

它总是返回 RequiresTwoFactor 作为 false。如果有人能告诉我是什么原因造成的,我将不胜感激。

注意:

我还在启动中添加了以下代码行.cs

services.AddTransient<IEmailSender, AuthVerification>();
services.AddTransient<ISmsSEnder, AuthVerification>();

好的。原来我缺少以下代码

.AddDefaultTokenProviders();

services.AddIdentity<ApplicationUser, IdentityRole>().AddEntityFrameworkStores<AppDBContext>()

所以应该是

services.AddIdentity<ApplicationUser, IdentityRole>().AddEntityFrameworkStores<AppDBContext>().AddDefaultTokenProviders();

相关内容

  • 没有找到相关文章

最新更新