我发现IdentityServer4的示例使用MVC来登录UI。当OpenIdConnect隐式客户端点击' authorization_endpoint' (示例' http://localhost:5000/connect/authorize')它会被重定向到AccountController登录操作。如何将IdentityServer4配置为使用不同的控制器或UI作为登录页面?
答案 0 :(得分:23)
在ConfigureServices方法下(在Startup中)添加一个SetupIdentityServer选项方法:
services.AddIdentityServer(*SetupIdentityServer*)
.AddSigningCredential(...)
.AddValidationKeys()
.AddConfigurationStore(builder => builder.UseSqlServer(""))
.AddOperationalStore(builder => builder.UseSqlServer(""))
.AddAspNetIdentity<ApplicationUser>();
...其中,SetupIdentityServer是您可以设置登录URL的方法的名称:
private static void SetupIdentityServer(IdentityServerOptions identityServerOptions)
{
identityServerOptions.UserInteraction.LoginUrl = "/Controller/Action";
}