一种方法是在登录期间检查用户是否通过以下方式设置了2FA:
var user = await _userManager.FindByEmailAsync(Input.Email);
var twoFactorEnabled = user.TwoFactorEnabled;
如果为false,则可以将用户重定向到配置2FA page(./Manage/TwoFactorAuthentication
),在用户设置2FA并启用2FA后,TwoFactorEnabled
在AspNetUsers
table中将是True
,然后在登录过程中,身份将自动将用户重定向到./LoginWith2fa
页面以进行2FA登录(如果当前)用户的TwoFactorEnabled
值为true。
谢谢您的大力帮助。