-
Type:
Improvement
-
Resolution: Won't Fix
-
Priority:
Minor
-
Component/s: matrix-auth-plugin
-
None
-
Environment:Jenkins ver. 1.533
Greetings,
This is the situation as of now:
There are 2 Groups of engineers, Group A and Group B.
Every group has it's own jobs under the same Jenkins server:
Group A uses Jobs 1,2,3
Group B uses Jobs 4,5
Both groups currently have access to create/delete/configure/run any of these jobs, as both are included in Global Security's "Project-based Matrix Authorization Strategy".
I would like to separate the jobs in a manner that:
Group A can access and interfere with the jobs it is entitled to. (1,2,3)
Group B can access and interfere with the jobs it is entitled to. (4,5)
No group should, in any way, interfere with the other group's jobs, so for example job 1 should not be even visible to Group B.
Resolution:
Solution(1)
Remove both groups from the Global Security matrix and "Enable project-based security" within the jobs, so that:
In jobs 1,2,3 i'll include Group A
In jobs 4,5 i'll include Group B
This is perfect for a limited number of jobs, but in a large production environment, with 10 or more groups and more than 100 of jobs, doing it manually for every job is a bit time consuming. Moreover, this has to be done manually for any new job that will be created.
Solution(2) And this is my actual request, which would be very nice to have!
Create 2 views, one for every Group and "Enable view-based security" within the view, so that:
View A will include all jobs of Group A, both view and jobs being invisible to Group B. Group A will be able to create new jobs ONLY in this view, so the "Job - Create" should be included in the permissions matrix too.
View B will include all jobs of Group B, both view and jobs being invisible to Group A. Same goes here.
I guess that so as to have the "Enable view-based security" option within a view, a relevant Access Control Authorization strategy will have to be created, this is why the title of the issue.
Thank you very much for your time.