与本地Identity Server 4连接的新Blazor项目

时间:2019-10-10 14:57:51

标签: asp.net-core identityserver4 blazor

当我创建新的Blazor项目时,可以选择通过Individual User AccountsConnect to an existing user store in the cloud使用身份验证。 我已经安装并配置了本地Identity Server 4。我可以使用它进行身份验证吗? 在这种情况下,应该为Sign-up or Sign-ii policyReset Password PolicyEdit Profile Policy选项指定哪些参数?

enter image description here

1 个答案:

答案 0 :(得分:0)

否,该选项用于连接Microsoft的云身份服务之一的Azure AD B2C应用程序。

如果要连接到本地Identity Server 4,可以首先安装软件包IdentityServer4,然后在blazor应用程序中添加身份验证,使用OIDC中间件连接到IDS4:

services.AddAuthentication(options =>
{
    options.DefaultScheme = "Cookies";
    options.DefaultChallengeScheme = "oidc";
})
.AddCookie("Cookies")
.AddOpenIdConnect("oidc", options =>
{
    options.Authority = "http://localhost:5000";
    options.RequireHttpsMetadata = false;

    options.ClientId = "mvcBlazor";
    options.SaveTokens = true;
    options.Scope.Add("openid");
    options.Scope.Add("profile");
});

services.AddMvcCore(options =>
{
    var policy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser()
        .Build();
    options.Filters.Add(new AuthorizeFilter(policy));
});

app.UseAuthentication();

您可以参考以下文章以获得代码示例和说明:

https://nightbaker.github.io/blazor/identityserver4/serverapp/2019/08/29/blazor-serverapp-identity-server-4/