Asp.Net Core DefaultAuthorizationService 针对 JWT 令牌运行两次

Bil*_*oel 5 c# asp.net authentication jwt asp.net-core

我尝试AuthenticationScheme为进来的 JWT 令牌创建一个。

对于我的控制器,我有一个[Authorize(Policy=Owner)]属性。

它有效,但我在调试日志中注意到这种情况正在发生:

Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerMiddleware:信息:已成功验证令牌。Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerMiddleware:信息:AuthenticationScheme:TrustyBearer 已成功通过身份验证。Microsoft.AspNetCore.Authorization.DefaultAuthorizationService:信息:用户授权成功:af078cae-123b-4fa6-aacb-525dc5a4d5cb。Microsoft.AspNetCore.Authorization.DefaultAuthorizationService:信息:用户授权成功:af078cae-123b-4fa6-aacb-525dc5a4d5cb。

看起来 JWT 中间件正在验证令牌,然后通过方案名称再次验证它。两次,还是两种不同的东西?

但随后我又收到两条相同的Authorization was successful for user...消息。

即使我关闭策略名称属性并仅使用 ,也会发生这种情况[Authorize]

我查了一下,我认为我没有做过两次事情。

这是正常的吗?

TIA