FusionAuth .NET示例应用中角色Claim为空的问题求助
FusionAuth .NET示例应用中角色Claim为空的问题求助
我现在在用FusionAuth的.NET示例项目,遇到了个头疼的问题——没法在Claims里获取到角色信息。看了下这好像是个挺常见但还没解决的问题,我已经在FusionAuth里配置了一个简单的应用,还专门加了一个角色。
下面是我在Startup.cs里写的认证逻辑:
services.AddAuthentication(options => { options.DefaultScheme = "cookie"; options.DefaultChallengeScheme = "oidc"; }) .AddCookie("cookie", options => { options.Cookie.Name = Configuration["SampleApp:CookieName"]; }) .AddOpenIdConnect("oidc", options => { options.Authority = Configuration["SampleApp:Authority"]; options.ClientId = Configuration["SampleApp:ClientId"]; options.ClientSecret = Configuration["SampleApp:ClientSecret"]; options.Scope.Add("openid"); // 保留这段,否则aud claim会被移除,相关原因可以参考对应的Stack Overflow问题 options.ClaimActions.Remove("aud"); options.ResponseType = "code"; options.RequireHttpsMetadata = false; options.TokenValidationParameters = new TokenValidationParameters { ValidateAudience = true, ValidAudience = Configuration["SampleApp:ClientId"] }; });
我在Secure.cshtml里用这段代码来查看所有Claims:
@foreach (var claim in User.Claims) { <dt>@claim.Type</dt> <dd>@claim.Value</dd> }
备注:内容来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

