2014-12-08:已不再擔任SCM和CI的職位,Jenkins系列的文章如無必要不會再維護。
說明:本方法適用於安全矩陣和項目矩陣授權策略的Jenkins。
很多童鞋在使用jenkins的時候忘記配置權限或者權限配置錯誤,然后各種蛋疼。最近閑着無事,折騰了下。好了,閑話少扯。
Jenkins的權限配置文件存放在JENKINS_HOME目錄。
進入JENKINS_HOME目錄,找到config.xml文件。嗯,就是它了。打開config.xml,里面有一堆的東西,找找。。。找到了<useSecurity>和<authorizationStrategy>節點。<useSecurity>節點代表是否使用用戶權限,<authorizationStrategy>節點代表用戶權限是怎么划分的。如圖:
下面提供2種方法供大家使用:
- 恢復默認設置
直接刪除<useSecurity>和<authorizationStrategy>節點
- 配置管理員權限
這種方法適用於已經存在一堆的權限,重新配置麻煩。
在<authorizationStrategy>節點中添加內容如下:
<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>
ps:anonymous可以更改成你的登錄名。提供給大家的是匿名用戶的配置。
改完之后記得保存額,然后重啟Jenkins。
最后給大家說說在配置文件里面怎么辨別使用是哪種權限控制模式
<authorizationStrategy>節點上有個class屬性,這個屬性控制着使用那種授權模式。
hudson.security.FullControlOnceLoggedInAuthorizationStrategy | 登錄用戶可以做任何事 |
hudson.security.ProjectMatrixAuthorizationStrategy | 項目矩陣授權策略 |
hudson.security.GlobalMatrixAuthorizationStrategy | 安全矩陣 |
hudson.security.LegacyAuthorizationStrategy | 遺留模式 |
好了,有問題,請留言!