jenkins原理篇——成员权限管理
大家好,我是藍胖子,前面幾節我講述了jenkins的語法以及我是如何使用jenkins對測試和正式環境進行發布的。但正式環境使用jenkins還有一點很重要,那就是權限管理。正式環境的權限往往不能對所有人開放,以及要做到每次發布都是誰在操作 都有跡可循,這樣才能方便以后排查問題。所以,今天我們就來看看jenkins的權限管理應該如何來做。
安裝Role-based Authorization Strategy 插件
我們采用RBAC 基于角色的方式進行授權,需要在jenkins上安裝插件,在Jenkins的Manage Jenkins→Plugins→Available Plugins 中安裝
之后在Jenkins的Manage Jenkins→Security 中開啟基于角色的權限策略。
然后在jenkins的配置欄里就能看到多出來的角色權限配置了。
配置角色
緊接著,我們可以配置相關的角色并且為角色分配對應模塊的權限。角色分為3種類型,Global roles,Item roles(項目角色),Agent roles(和節點操作權限相關的角色),其中Global roles擁有最高的權限,如果為它分配job的讀寫權限,那么用戶如果綁定了這個角色,將會允許讀取所有的job,不管用戶是不是擁有的項目角色的權限。
溫馨提示: job 和item在jenkins中的概念,都可以看成是jenkins的創建的編譯部署項目。
如下圖所示,擁有一個admin角色,擁有jenkins的所有權限,我們還創建了一個dev角色,擁有對jenkins界面的讀權限(可能說法不太準確,但事實是如果普通角色的用戶沒有overall的讀權限,那么他進去jenkins后將什么也不不能看,并且提示其權限不足)
接著,我們再分配兩個針對具體構建項目的角色,develop和prodev,如下圖所示,分別是針對測試環境和正式環境的項目創建的角色,其中,pattern能夠用正則表達式匹配具體構建的項目名。對job的權限勾選了build,cancel,read,所以這兩個角色都能夠對他們看到的具體項目擁有構建,取消構建和讀權限。
分配角色
接著,我們再把配置好的角色分配給具體的用戶,如下圖所示,用戶同時擁有dev,develop和prodev3個角色。
之后,用該用戶登錄jenkins可以看到正確的項目構建頁面,同時擁有生產環境和測試環境的構建權限。效果如下,
這里我是對用戶同時分配了對正式環境和測試環境有構建權限的角色給一個用戶,真實開發中,可以對少部分人開啟這個權利,畢竟知道正式環境配置的人越少,系統越安全。
總結
以上是生活随笔為你收集整理的jenkins原理篇——成员权限管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Asp.Net Core webapi+
- 下一篇: AtCoder Beginner Con