public async Task <AuthorizationResult> AuthorizeAsync(ClaimsPrincipal claims, object resourceType, IEnumerable <IAuthorizationRequirement> requirements) { var userResource = JwtManager.GetUser(claims); if (userResource?.Email == Config.AppSettings.AdminUserName) { return(AuthorizationResult.Success()); } var allowedActions = GetAllowedActions(userResource, resourceType.ToString()).ToList(); if (IsAllowed(allowedActions, requirements.First())) { return(AuthorizationResult.Success()); } else { return(AuthorizationResult.Failed()); } }
protected void SetUser() { CurrentUserGetter.CurrentUser = JwtManager.GetUser(User); }