Skip to content

Remove group member: option to remove membership of subgroups/projects

What does this MR do?

Solves #321699 (closed) #322058 (closed)

When a member is removed from a group, the user's direct membership in the group is deleted. In addition, all inherited memberships in subgroups and projects disappear. This is all as it should be. But it also removes all direct memberships of the affected user in subgroups and projects - i.e. those memberships that were not inherited but explicitly added.

Since this is not the expected behavior, this MR makes the following changes:

  • By default, the direct memberships in subgroups and projects are no longer automatically removed as well.
  • In order that this functionality can still be used if required, the option Also remove direct user membership from subgroups and projects is introduced in the UI and the parameter remove_sub_memberships=true in the API.

🛠 with at Siemens

/cc @bufferoverflow

Screenshots

before after
Remove group member modal dialog: Remove_group_member_dialog_before
notification: Remove_group_member_notification_before





modal dialog: Remove_group_member_dialog_after
notification (checkbox not checked): Remove_group_member_notification_after_not_checked
notification (checkbox checked): Remove_group_member_notification_after_checked
Remove project member modal dialog: Remove_project_member_dialog modal dialog: no change Remove_project_member_dialog

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Jonas Wälter

Merge request reports