尋找有關如何進行此操作的建議:我有一個通過JWT身份驗證和用戶角色授權保護的asp.net core 2 webapi項目。我在asp.net webapi中添加了第3方中間件,該中間件公開了指標終結點。我可以在指標中間件中設置端點路由和端口,但是沒有授權選項。我想確保這些端點與我自己的API端點相同,因此只有某個角色可以訪問它們,但不確定如何執行此操作,也許其他自定義中間件會降低發現這些路由并檢查JWT的鏈的下游?
1 回答

藍山帝景
TA貢獻1843條經驗 獲得超7個贊
您有一個正確的想法,下面是一個如何通過端點保護它的示例。
public class MyAuthorizeMiddleware
{
private readonly RequestDelegate _next;
public MyAuthorizeMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext context)
{
if (context.Request.Path.StartsWithSegments("/endpoint")
&& !context.User.Identity.IsAuthenticated)
{
context.Response.StatusCode = StatusCodes.Status401Unauthorized;
return;
}
await _next.Invoke(context);
}
}
- 1 回答
- 0 關注
- 139 瀏覽
添加回答
舉報
0/150
提交
取消