protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, PermissionAuthorizationRequirement requirement) { if (context.User.IsInRole("SuperAdmin")) { context.Succeed(requirement); return(Task.CompletedTask); } var userId = context.User.Claims.FirstOrDefault(p => p.Type == JwtClaimTypes.Subject)?.Value; if (userId != null && _userStore.CheckPermission(userId, requirement.Name)) { context.Succeed(requirement); } else { context.Fail(); } return(Task.CompletedTask); }