You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 08:53:10