Example #1
0
        private bool CheckPermission(string roleName, string membershipId, Rbac rbac, Utilizer utilizer)
        {
            var hasUbacPermission = utilizer.HasPermission(rbac);

            if (hasUbacPermission != null)
            {
                return(hasUbacPermission.Value);
            }

            var role = this.roleService.GetByName(roleName, membershipId);

            if (role != null)
            {
                return(CheckPermission(role, rbac, utilizer));
            }
            else
            {
                throw Core.Exceptions.ErtisAuthException.RoleNotFound(roleName, true);
            }
        }
Example #2
0
        private static bool CheckPermission(Role role, Rbac rbac, Utilizer utilizer)
        {
            var hasUbacPermission = utilizer.HasPermission(rbac);

            if (hasUbacPermission != null)
            {
                return(hasUbacPermission.Value);
            }

            if (role.HasPermission(rbac))
            {
                return(true);
            }
            else if (role.HasOwnUpdatePermission(rbac, utilizer))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }