首页 > 解决方案 > 在使用 AddIdentityExpressAdminUiConfiguration() 而不是 AddDefaultIdentity() 时如何指定 SignIn.RequireConfirmedAccount?

问题描述

我正在使用services.AddIdentityExpressAdminUiConfiguration()IdentityExpress 包。我该如何指定SignIn.RequireConfirmedAccount

通常这将在services.AddDefaultIdentity()调用中完成,但由于AddIdentityExpressAdminUiConfiguration()添加了身份,如果我这样做,我最终会遇到异常。

将以下内容添加到 ConfigureServices() 不起作用: services.Configure<SignInOptions>(x => x.RequireConfirmedAccount = true).因为UserManager.Options.SignIn.RequireConfirmedAccount始终为 false。

标签: identityserver4openid-connectidentityserver3

解决方案


我通过将以下内容添加到Configure()

app.ApplicationServices.GetRequiredService<IOptions<IdentityOptions>>().Value.SignIn.RequireConfirmedAccount = true;

这也适用于设置密码强度属性等。

尝试将其设置在内部ConfigureServices()没有用。我怀疑它被里面的逻辑所覆盖AddIdentityExpressAdminUiConfiguration()


推荐阅读