public override async Task OnActionExecutionAsync(ActionExecutingContext actionContext, ActionExecutionDelegate next) { if (!actionContext.ModelState.IsValid) { actionContext.Result = new BadRequestObjectResult(actionContext.ModelState); } else { var isAllowedAnonymous = false; if (actionContext.ActionDescriptor is ControllerActionDescriptor controllerActionDescriptor) { isAllowedAnonymous = controllerActionDescriptor.MethodInfo.GetCustomAttributes(typeof(AllowAnonymousAttribute), true).Any(); } if (!isAllowedAnonymous) { var requestInformation = await _claimAccessor.GetClaims(); _requestInfo.SetCurrent(requestInformation); } await next(); } }