[英]Custom UserConfirmation not being called in Asp.Net Core 5 Identity
使用 Asp.Net Core 5.0,我添加了 Identity 和自定义 UserConfirmation:
services
.AddIdentityCore<User>()
.AddEntityFrameworkStores<Context>()
.AddDefaultTokenProviders()
.AddUserConfirmation<UserConfirmation<User>>();
我的自定义UserConfirmation
如下:
public class UserConfirmation<T> : IUserConfirmation<T> where T : User {
public async virtual Task<Boolean> IsConfirmedAsync(UserManager<T> manager, T user) {
if (!user.Enabled)
return false;
if (!await manager.IsEmailConfirmedAsync(user))
return false;
return true;
}
}
但是方法CanSignInAsync
:
_signInManager.CanSignInAsync(user)
即使未启用用户,也始终返回true
。
并且我在IsConfirmedAsync
添加的断点没有被触发。
我错过了什么?
我发现了问题。 以下需要添加到身份选项中:
services.AddIdentityCore<User>(options => {
options.SignIn.RequireConfirmedAccount = true;
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.