ASP.NETCore6MVC:SignInManager不能与AddAuthentication一起使用来处理JwtBearer令牌。
创始人
2024-09-17 14:31:08
0

在ASP.NET Core 6 MVC应用程序中使用JwtBearer身份验证时,需要将AddJwtBearer和AddAuthentication同时添加到Startup.cs文件中的ConfigureServices方法中。但是,当我们在SignInManager中使用AddAuthentication时,出现了问题,SignInManager似乎无法识别JwtBearer令牌。

要解决这个问题,我们需要手动以编程方式将JwtBearer令牌与Identity一起使用。为此,我们需要更改ConfigureServices中的代码,以便在添加AddAuthentication之前添加Identity。然后,我们可以使用AddJwtBearer方法来将JwtBearer令牌添加到应用程序中,并使用AddIdentity方法将Identity添加到应用程序中。最后,在AddAuthentication后,我们可以添加UseAuthentication以启用认证。

以下是示例代码:

public void ConfigureServices(IServiceCollection services) { services.AddIdentity() .AddEntityFrameworkStores() .AddDefaultTokenProviders();

services.AddJwtBearer(options =>
{
    options.TokenValidationParameters = new TokenValidationParameters
    {
        ValidateIssuer = true,
        ValidateAudience = true,
        ValidateLifetime = true,
        ValidateIssuerSigningKey = true,
        ValidIssuer = Configuration["Jwt:Issuer"],
        ValidAudience = Configuration["Jwt:Issuer"],
        IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["Jwt:Key"]))
    };
});

services.AddAuthentication(options =>
{
    options.DefaultScheme = JwtBearerDefaults.AuthenticationScheme;
    options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
    options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(options =>
{
    options.TokenValidationParameters = new TokenValidationParameters
    {
        ValidateIssuer = true,
        ValidateAudience = true,
        ValidateLifetime = true,
        ValidateIssuerSigningKey = true,
        ValidIssuer = Configuration["Jwt:Issuer"],
        ValidAudience = Configuration["Jwt:Issuer"],
        IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["Jwt:Key"]))
    };
});

services.AddControllers

相关内容

热门资讯

教会开挂!德普之星透视辅助软件... >>您好:德普之星透视辅助软件下载确实是有挂的,很多玩家在这款德普之星透视辅助软件下载游戏中打牌都会...
本来有辅助"微信呢小... 微信呢小程序游戏辅助器是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以...
通报开挂!朱雀开心罗松怎么开挂... 朱雀开心罗松怎么开挂是一款专注玩家量身打造的游戏记牌类型软件,在朱雀开心罗松怎么开挂这款游戏中我们可...
本来有辅助"来来云南... >>您好:来来云南辅助确实是有挂的,很多玩家在这款来来云南辅助游戏中打牌都会发现很多用户的牌特别好,...
分享辅助!德普之星有透视辅助吗... 德普之星有透视辅助吗 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由:...
从前有开挂"新永和源... 【亲,新永和源代码 这款游戏可以开挂的,确实是有挂的,很多玩家在这款新永和源代码中打牌都会发现很多用...
分享辅助!雀神挂件价格骗局(透... 雀神挂件价格骗局 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: 1...
从前有辅助"山西大唐... 从前有辅助"山西大唐辅助器"开挂(透视)辅助脚本(微扑克教程的确有挂)您好:山西大唐辅助器这款游戏可...
分享辅助!三哥玩摆头可以控制(... 分享辅助!三哥玩摆头可以控制(透视)wepoker有透视吗(扑克教程开挂辅助工具) 【无需打开直接搜...
先前有辅助"wpk俱... 大家好,今天小编来为大家解答wpk俱乐部是做什么的这个问题咨询软件客服可以免费测试直接加微信(136...