小编Dot*_*per的帖子

为什么 ApiAuthorization 在 .NET 5 中不起作用

我从 3.1 版开始使用 .NET Core API 授权,在我将项目升级到 .NET 5 之前一直运行良好。更新后,我得到了一个NullReferenceException.

这是来自Startup.cs的代码:

配置服务

services.AddDbContext(options =>
    options.UseInMemoryDatabase("Databaase"));

services.AddDefaultIdentity()
    .AddEntityFrameworkStores();

services.AddIdentityServer()
    .AddApiAuthorization<ApplicationUser, ApplicationDbContext>();

services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
    .AddJwtBearer(options =>
    {
        options.RequireHttpsMetadata = false;
        options.SaveToken = true;
        options.TokenValidationParameters = new TokenValidationParameters
        {
            ValidateIssuer = true,
            ValidateIssuerSigningKey = true,
            ValidIssuer = configuration["Jwt:Issuer"],
            IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration["Jwt:SecretKey"])),
            ValidAudience = configuration["Jwt:Audience"],
            ValidateAudience = true,
            ValidateLifetime = true,
            ClockSkew = TimeSpan.Zero // Override the default clock skew of 5 mins
        };
    });
Run Code Online (Sandbox Code Playgroud)

配置

app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
Run Code Online (Sandbox Code Playgroud)

这是我的 …

c# asp.net-core .net-5 asp.net-core-5.0

5
推荐指数
1
解决办法
452
查看次数

标签 统计

.net-5 ×1

asp.net-core ×1

asp.net-core-5.0 ×1

c# ×1