【发布时间】:2017-06-26 15:19:11
【问题描述】:
我在我的控制器中添加了一些代码来授权所有用户:
[Authorize]
[Route("/api/{companyIdentifier}/My")]
public class MyController : ControllerBase
{
在一个自定义中间件应用程序中,我添加了以下基于 jwt 声明的逻辑。
var validateTokenResult =handler.ValidateToken(tokenString, parameters,out outvariable);
if (validateTokenResult.Identity != null)
{
var identity = new ClaimsIdentity(validateTokenResult.Claims)
{
Label = "Middleware Bearer Auth"
};
context.User.AddIdentity(identity);
}
我仍然收到 401 Unauthorized。调试时我可以看到添加身份后有2个身份。一个没有声明,第二个有多个声明并设置为 isAuthenticated:true。知道这里会发生什么。我猜不应该添加第一个身份。
【问题讨论】:
标签: c# asp.net-core jwt claims-based-identity