在初创公司,我有
services.AddAuthentication(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"]))
};
});
然后
app.UseAuthentication();
两个问题
-
除了那些具有[AllowAnonymous]的控制器/操作外,如何设置默认启用的授权?
-
如何让代码返回401而不是重定向到Login页面?
关于这一点有很多问题和答案,但它们似乎总是关于具有许多认证方案的站点,例如cookie和jwt . 我有一个纯jwt认证的后端,只有令牌发行者 endpoints 将具有匿名访问权限,其他所有内容都经过身份验证和授权 .
1 回答
我需要配置 StatusCodePages 中间件以避免重定向 .