public bool RemoveRoleFromAction(string actionName, string roleName) { if (!ActionRoleManager.GetRolesOfAction(actionName).Contains(roleName)) { return(false); } ActionRoleManager.RemoveRoleFromAction(actionName, roleName); return(true); }
public void OnActionExecuting(ActionExecutingContext context) { string path = context.HttpContext.Request.Path; string[] Roles = ActionManager.GetRolesOfAction(path).ToArray(); string[] Permissions = ActionManager.GetPermissionOfAction(path).ToArray(); if (!context.HttpContext.User.Claims.Any()) { if (Roles.Length > 0 || Permissions.Length > 0) { context.Result = new UnauthorizedResult(); } } else { if (!RoleValidator.ValidateRoles(context.HttpContext.User, Roles)) { context.Result = new UnauthorizedResult(); } if (!RoleValidator.ValidatePermissions(context.HttpContext.User, Permissions)) { context.Result = new UnauthorizedResult(); } } }