Identity.IsAuthenticated is false for signalR authorization

Viewed 27

I have the following code for authorization

    protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, ClientPermissionRequirement requirement)
    {
        // Hard-code an "it's OK" message.
        if (requirement.Permission.Contains("SignalR"))
        {
            context.Succeed(requirement);
            return Task.CompletedTask;
        }
        return Task.CompletedTask;
    }

I checked Identity.IsAuthenticated is true. Then, we have DJ in my constructor:

    [Authorize(Policy = "SignalR.***")]
    public class MyHub 
    {
      public MyHub(
        IHttpContextAccessor httpContextAccessor
        , ILoggerFactory loggerFactory = null
        ) 
     {
     }
    }

But, I found the Identity.IsAuthenticated in httpContextAccessor is false. It seems the authorization is cleared. It doesn't make any sense. Any explantion?

0 Answers
Related