ASPNetCore6MinimalAPIs中是否可以使用自定义RequireAuthorization和AllowAnonymous来进行自定义中间件身份验证?
创始人
2024-09-20 08:00:56
0

是的,ASP.Net Core 6允许我们定义自定义Authentication管道。 在Minimal API中,我们可以使用以下代码实现:

  1. 定义自定义中间件来实现身份验证

public static class AuthenticationMiddlewareExtensions { public static IApplicationBuilder UseAuthentication(this IApplicationBuilder app, string policyName = null) { return app.Use(async (context, next) => { if (context.Request.Headers.TryGetValue("Authorization", out var authHeader)) { var authHeaderValue = authHeader.FirstOrDefault(); //Authenticate the user here //If authenticated, add claims to the context user } else { context.Response.StatusCode = 401; await context.Response.WriteAsync("Unauthorized"); return; }

        await next();
    });
}

}

  1. 在Minimal API中使用自定义身份验证中间件

var builder = WebApplication.CreateBuilder();

builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen();

builder.Services.AddAuthorization(options => { options.AddPolicy("MyCustomPolicy", policy => { policy.RequireAuthenticatedUser(); }); });

var app = builder.Build();

app.UseAuthentication();

app.MapGet("/hello", () => "Hello, World!") .RequireAuthorization("MyCustomPolicy");

app.Run();

在上面的代码中,我们通过调用UseAuthentication方法将自定义身份验证中间件添加到ASP.NET Core 6 Minimal API中。 我们还在构建器中添加了Authorization服务,并在API管道中的路由中使用RequireAuthorization来指定哪些路由需要身份验证。

相关内容

热门资讯

分享透视!拱趴大菠萝挂怎么安装... 分享透视!拱趴大菠萝挂怎么安装,微乐小程序辅助器,妙招教程(有挂讲解)-哔哩哔哩1、起透看视 拱趴大...
揭露透视!wepoker国外版... 揭露透视!wepoker国外版透视,微乐陕西小程序破解器下载,策略教程(有挂实锤)-哔哩哔哩1、实时...
分享透视!菠萝德州透视脚本,微... 分享透视!菠萝德州透视脚本,微乐小程序黑科技辅助工具推荐,方案教程(有挂教程)-哔哩哔哩1、菠萝德州...
辅助透视!大菠萝789辅助器下... 辅助透视!大菠萝789辅助器下载,微乐江苏自建房辅助app,演示教程(有挂讲解)-哔哩哔哩一、大菠萝...
解谜透视!fishpoker透... 解谜透视!fishpoker透视,微信小程序修改器,教程书教程(有挂方略)-哔哩哔哩1.fishpo...
解迷透视!wepoker科技辅... 解迷透视!wepoker科技辅助器,微乐麻辣自建房辅助视频,妙招教程(详细教程)-哔哩哔哩1、这是跨...
关于透视!wepoker作弊方... 关于透视!wepoker作弊方法,微乐房间辅助工具在哪下载,绝活教程(揭秘有挂)-哔哩哔哩所有人都在...
教你透视!拱趴大菠萝有挂吗,微... 教你透视!拱趴大菠萝有挂吗,微信小程序有挂吗辅助,手筋教程(有挂详情)-哔哩哔哩1、拱趴大菠萝有挂吗...
教你透视!wepoker到底有... 教你透视!wepoker到底有没有透视,微乐自建房脚本下载,机巧教程(有挂解惑)-哔哩哔哩1、进入游...
解谜透视!hhpoker有透视... 解谜透视!hhpoker有透视功能吗,微乐广西小程序开发,资料教程(有挂详细)-哔哩哔哩1、hhpo...