Include inherited membership in User Permissions CSV

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem Statement

#273482 (closed) introduces a CSV export for User Permissions in an instance by administrators.

Example CSV template:

Username Email Type Path Access Level
root admin@example.com Group gitlab-org Owner

It does not include details on the inherited memberships.

For e.g.:

Screen_Shot_2020-12-15_at_1.25.32_PM

  • Members of Group A, will also have access to sub-groups: A1, A2, A11, A21 and projects A3
  • Members of Group A21 will also have access to Group A11 as a means of shared group

Proposal

  • Include Inherited memberships to include Nested group/projects and shared groups.

This will require modifying the query to a recursive CTE query and obtain the nested relationship. Project authorization currently does this to report for a single user. Care needs to be taken to ensure the resultant query does not result in n+1 queries.

Additional details

The thread here has a related discussion.

Edited by 🤖 GitLab Bot 🤖