Hi all,
i’m new here, so pls be patient if i do something wrong.
ALM GitLab “Synchronize user groups” sets wrong group permissions to Sonar Users that are not inside any gitlab groups, for example users having only developer role directly inside gitlab projects.
-
versions used: SonarQube 8.5 CE
-
error observed: Wrong group permissions for Sonar Users not inside GitLab groups.
-
steps to reproduce
Assume we have GitLab ALM enabled with “Syncronize user groups” enabled too.
- create gitlab user (eg:
user1
) - create gitlab group (eg:
groupA
) - inside
groupA
create new project (eg:groupA/projectA
) - inside
groupA
create new subgroup (eg:groupA/groupA1
) - inside
groupA1
create new project (eg:groupA/groupA1/projectA1
) - inside
groupA1
create new project (eg:groupA/groupA1/projectA2
) - assign
developer
role touser1
insideprojectA1
only
Now you should have
groupA <- with no user1 permissions |- projectA <- with no user1 permissions |- groupA1 <- with no user1 permissions |- projectA1 <- with user1 developer role |- projectA2 <- with no user1 permissions
- In SonarQube create group
groupA
and groupgroupA/groupA1
(as explained here) - sonar-scanner
projectA
and assign project permission (browse sufficient) togroupA
- sonar-scanner
projectA1
and assign project permission (browse sufficient) togroupA/groupA1
- sonar-scanner
projectA2
and assign project permission (browse sufficient) togroupA/groupA1
Now, when
user1
loggin in SonarQube using GitLab auth, sonar will auto-assignuser1
to bothgroupA
andgroupA/groupA1
even ifuser1
does not belong to any group in GitLab.As a consequence,
user1
will be able to see all scanned projects assigned in both groups:
projectA
,projectA1
andprojectA2
. - create gitlab user (eg:
-
potential workaround
not found atm
I can imagine that sonar plugin will call gitlab /api/ to read where user1
can access or not, and maybe this is complex to resolve, but this issue could be a little security risk for some kind of organizations.
Thanks however for all help u can do, and excuse me if I haven’t been clear enough, i’m not native english speaker
Bye and thanks for SonarQube, it’s really awesome!