前言
在實際使用中,需要對使用jenkins的開發人員或者運維人員控制一定的權限,比如不同的用戶只能對指定的項目進行構建等,jenkins本身沒有管理用戶權限的相關配置,需要藉助插件來完成,比較常用的插件叫做Role-based Authorization Strategy
1、安裝Role-based Authorization Strategy
搜索Role即可顯示該插件
這個安裝的很快
從安全配置菜單進入
點擊進去可以看到默認情況下,登錄進來的用戶可以做任何事,也就是權限的粒度是很粗的,因此需要改成如下所示
選擇並保存成功後,從系統管理頁面進入Manage and Assign Roles
選擇manage roles
進入如下的角色配置頁面
默認情況下,具有3種角色,Global roles,Item roles,Node roles
- Global roles(全局角色):管理員等高級用戶可以創建基於全局的角色
- Item roles:針對某個或者某些項目的角色
- Slave roles:節點相關的權限
我們添加以下三個角色:
- BaseRole:全局角色,該角色需綁定Overall下面的Read權限,是爲了給所有用戶綁
定最基本的Jenkins訪問權限。【注意:如果不給後續用戶綁定這個角色,會報錯誤:用戶名 is
missing the Overall/Read permission】 - role1:項目角色,使用正則表達式綁定"web.*",表示只能操作web開頭的項目
- role2:項目角色,綁定"app..",意思是隻能操作app開頭的項目
配置完畢後點擊保存
我們知道,在權限分配中,用戶是需要配置角色的,即用戶擁有了某種角色,即具備了角色對應的權限,下面我們先創建幾個用戶,進入如下菜單
我們創建兩個用戶,分別是zhangsan 和 lisi
創建完畢後,我們進入Manage and Assign Roles 進行用戶的角色配置
將上面自己添加的角色分別爲兩個用戶進行關聯,保存
接下來,使用管理員賬戶創建兩個項目分別爲,web-demo和app-demo,驗證一下權限是否生效
使用zhangsan 和 lisi兩個賬戶分別登陸一下,進入主頁面後,可以發現各自只能看到上面的角色配置中以web開頭和以app開頭的項目
本篇主要講述了在jenkins中使用Role-based Authorization Strategy 插件來完成對用戶的權限分配和管理,主要是操作過程比較繁瑣,難度不大,希望對看到的同學有用,最後感謝觀看!