Jenkins安裝
Jenkins構(gòu)建android
Jenkins構(gòu)建maven
Jenkins構(gòu)建nodejs應(yīng)用發(fā)布到nginx
Jenkins權(quán)限管理
1、引言
隨著要構(gòu)建的項(xiàng)目越來越多,Android、后臺(tái)、前端等人員都需要來構(gòu)建,這時(shí)如果把不相關(guān)的構(gòu)建項(xiàng)目展示出來,勢必會(huì)引起混亂,這時(shí)就需要引入權(quán)限管理。
本文依賴Role-based Authorization Strategy插件來實(shí)現(xiàn),按道理沒必要專門介紹一個(gè)插件的使用,但是在搜集和使用時(shí),發(fā)現(xiàn)很多博主描述不清晰,容易讓新手摸不著頭腦,所以這里詳細(xì)介紹一下。
1.1、目標(biāo)
分用戶展示構(gòu)建job
不同用戶登錄進(jìn)來,只展示自己相關(guān)的job條目,比如Android builder進(jìn)來只展示Android項(xiàng)目的job條目。
分角色對(duì)構(gòu)建job進(jìn)行編輯控制
不同用戶登錄進(jìn)來,有的用戶可編輯修改job,有的用戶則只能執(zhí)行。
2、安裝Role-based Authorization Strategy插件
在jenkins管理面板依次點(diǎn)擊
Manage Jenkins --> Plugin Manager --> Filter輸入框
輸入Role-based Authorization Strategy,根據(jù)提示自行安裝。
在jenkins管理面板依次點(diǎn)擊
Manage Jenkins --> Configure Global Security
找到Access Control或者叫授權(quán)策略選項(xiàng)卡,選中Role-Based Strategy單選項(xiàng)。
3、創(chuàng)建用戶
在jenkins管理面板依次點(diǎn)擊
Manage Jenkins --> Manage Users

根據(jù)需要?jiǎng)?chuàng)建一些用戶,請(qǐng)注意meihua這個(gè)用戶,后續(xù)介紹以該用戶為主。
4、配置權(quán)限
4.1、創(chuàng)建角色
在jenkins管理面板依次點(diǎn)擊
Manage Jenkins --> Manage and Assign Roles --> Manage Roles

這里分配3個(gè)角色,admin有所有權(quán),user只有構(gòu)建job的權(quán)力,webuser有構(gòu)建和編輯job的權(quán)力。主要看圖示箭頭2處的權(quán)限選擇。
圖示箭頭1,webuser這個(gè)是隨便取的名字,主要用來區(qū)分是否可編輯job。
圖示箭頭3,web是隨便取得名字,用來對(duì)應(yīng)已創(chuàng)建好的job handy_admin_web,這里注意不能用別名,需要用Project name,可自行點(diǎn)開對(duì)應(yīng)的job查看。Pattern并不是一定要完整填寫絕對(duì)名稱,有一些匹配規(guī)則,自行查找,這里不再贅述。
點(diǎn)擊Save退出。
4.2、給用戶分配角色
在jenkins管理面板依次點(diǎn)擊
Manage Jenkins --> Manage and Assign Roles --> Assign Roles

圖示箭頭1,這里給meihua這個(gè)用戶,分配了webuser權(quán)限,webuser可編輯job。Anonymous是其他人的意思,其他人都是普通user權(quán)限,只能構(gòu)建job不可編輯。
圖示箭頭2,android這個(gè)用戶,可以查看project列表里的android項(xiàng)目。meihua這個(gè)用戶,可以查看web項(xiàng)目。
點(diǎn)擊保存推出。
5、查看結(jié)果
5.1、登錄android用戶
可看到2個(gè)Android構(gòu)建job

進(jìn)入詳情頁,左側(cè)沒有Configure導(dǎo)航欄

5.2、登錄meihua用戶
只能看到前端的構(gòu)建項(xiàng)目

進(jìn)入詳情,有編輯權(quán)限

至此,權(quán)限分配完畢。