我正在设置启动时的身份选项,请致电:
services.AddIdentity<Usuarios, IdentityRole>(options =>
{
if (usersConfiguration.PasswordLongitud.HasValue)
options.Password.RequiredLength = usersConfiguration.PasswordLongitud.Value;
if (usersConfiguration.CantidadIntentosLogin.HasValue)
options.Lockout.MaxFailedAccessAttempts = usersConfiguration.CantidadIntentosLogin.Value;
options.Password.RequireLowercase = usersConfiguration.PasswordRequiereMinusculas;
options.Password.RequireUppercase = usersConfiguration.PasswordRequiereMayusculas;
options.Password.RequireNonAlphanumeric = usersConfiguration.PasswordRequiereCaracteresRaros;
options.Password.RequireDigit = usersConfiguration.PasswordRequiereNumeros;
options.SignIn.RequireConfirmedEmail = usersConfiguration.UsuarioRequiereConfirmacionMail;
})
我想让应用程序的用户更改此选项,因此我要做的就是从控制器中更改身份选项,但我没有找到该方法。例如,我需要允许用户管理员更改需求的eLotecase选项。如果可能的话,我想避免重新启动IIS再次致电启动。
对不起我的英语。
通过将UserManager
注入控制器中,您可以访问这些选项并更改它们。身份选项是通过单顿管理的,因此所有请求都将获得更新的值。
public MyController(UserManager<User> userManager)
{
userManager.Options.Password.RequireDigit = true; //Get something from db, config etc.
}