diff --git a/controllers/user.go b/controllers/user.go index 19b5360a..1bd12d11 100644 --- a/controllers/user.go +++ b/controllers/user.go @@ -703,7 +703,7 @@ func (c *ApiController) RemoveUserFromGroup() { return } - affected, err := object.DeleteGroupForUser(util.GetId(owner, name), groupName) + affected, err := object.DeleteGroupForUser(util.GetId(owner, name), util.GetId(owner, groupName)) if err != nil { c.ResponseError(err.Error()) return diff --git a/object/user.go b/object/user.go index d2499cdc..f38ddef1 100644 --- a/object/user.go +++ b/object/user.go @@ -1117,6 +1117,17 @@ func ExtendUserWithRolesAndPermissions(user *User) (err error) { } func DeleteGroupForUser(user string, group string) (bool, error) { + userObj, err := GetUser(user) + if err != nil { + return false, err + } + + userObj.Groups = util.DeleteVal(userObj.Groups, group) + _, err = updateUser(user, userObj, []string{"groups"}) + if err != nil { + return false, err + } + return userEnforcer.DeleteGroupForUser(user, group) }