2015-07-16 2 views
0

У меня есть только один экземпляр jenkins на локальной машине, который мы используем для создания нашего кода. У нас разные проектные группы, работающие над разными проектами, и разные рабочие места для каждого проекта. Чтобы исключить возможность того, что кто-то из одной команды случайно испортил работу другой команды, я создал нескольких пользователей jenkins. Однако все пользователи, которые могут войти в систему, все еще видят все задания. Есть ли способ, чтобы определенные пользователи могли видеть только рабочие места, относящиеся к ним?Безопасность работы на основе пользователей Jenkins

Я искал экстенсивно для чего-то подобного, но не повезло. Я не нашел для этого плагинов. В настоящее время я использую защиту на основе матриц, и хотя вы можете изменить права доступа для всех пользователей, вы не можете применять определенные разрешения для определенных заданий. По крайней мере, насколько мне известно. Есть идеи?

Чтобы уточнить, я хочу, чтобы одна из многих команд входила в свою учетную запись пользователя в jenkins и только просматривала их задания. Работы других команд не должны быть видимыми, только те, которые они назначили, должны быть видны при входе в систему

. Ближайшая вещь, которую я нашел для этого, находится в Плане стратегий ролей, есть пользовательский фильтр заданий

ответ

4

Оказывается, для этого есть функция, уже в дженкинсе, никаких плагинов не требуется! В разделе «Настройка глобальной безопасности» в разделе «Управление дженкинсами» нажмите «Стратегия авторизации на основе проектов». Затем вы можете настроить разрешения на экране настройки заданий для этого конкретного задания, нажав «включить защиту на основе проектов».

Теперь вы можете настроить Jenkins так, чтобы «Joe мог получить доступ к проектам A, B и C, но он не может видеть D».