插件名稱:Role-based Authorization Strategy正則表達式
Role Strategy Plugin插件能夠對構建的項目進行受權管理,讓不一樣的用戶管理不一樣的項目。安全
系統管理—>全局安全配置(Configure Global Security ),其中共有五種受權策略ruby
1.1. 選擇受權策略中的Role-Based Strategy,並點擊保存測試
1.2. 選擇系統管理—>Manage and Assign Roles (管理和分配角色)spa
在新開的頁面中有以下3個菜單:插件
1.3. 選擇"Manage Roles"進行角色配置。code
【Global roles】全局角色配置:
添加wts這個角色並進行受權xml
【Project roles】項目角色配置:blog
添加了三個項目角色:uat,dev和test。dev用於管理開發環境的項目,test用於管理測試環境的項目。進程
Pattern:對構建的項目名稱進行匹配,可使用正則表達式。
【Slave roles】從屬角色配置:
在全局角色中添加普通用戶,並將普通用戶加入到全局角色wts中,保證它們能夠正常登陸jenkins。
在項目角色中添加普通用戶,並根據實際需求勾選項目角色,這樣不一樣的用戶能夠對不一樣項目有管理權限。
項目內不推薦用
可勾選項---Allow anonymous read access(容許匿名讀取訪問)
適用於Jenkins1.164之前的版本.也就是說,若是你是"admin"角色,那麼你將擁有Jenkins的一切控制權,其它角色(包括匿名用戶) 只有查看權限.
選擇安全矩陣 (在配置頁面將鼠標放到對應權限上便可查看幫助):
其中有一些比較特別的權限:
Overall 的Administer 【最大權限】,擁有該權限能夠幹任何事情。
Overall的Read【最基本的權限】,用戶必須賦予閱讀的權限,否則什麼都看不到。
注:
每一個用戶後都有2個圖標,第一個是全選功能,第二個是清空功能
說明:安全矩陣和項目矩陣受權策略的配置是同樣的,惟一的區別是項目矩陣受權策略支持在Job的配置頁面再次配置受權策略。
首次配置jenkins的安全策略時,選擇安全矩陣,可是沒有給任何用戶付權限,點擊保存後。管理員登陸失效。從新登陸系統提示admin沒有Overall/Read權限的異常。
3.1. 經過查看jenkins進程查看JENKINS_HOME的目錄
ps -ef | grep jenkins
3.2. 編輯jenkins的config.xml這個配置
命令:vi /var/lib/jenkins/config.xml
配置文件如圖:
須要修改的是紅線圈起來的部分。
在該標籤內加入如下配置便可。
<permission>hudson.model.Hudson.Administer:anonymous</permission> <permission>hudson.model.Hudson.ConfigureUpdateCenter:anonymous</permission> <permission>hudson.model.Hudson.Read:anonymous</permission> <permission>hudson.model.Hudson.RunScripts:anonymous</permission> <permission>hudson.model.Hudson.UploadPlugins:anonymous</permission>
修改後的配置文件,以下圖:
3.3 重啓jenkins服務便可。