天天看點

Jenkins 進階篇 - 權限案例實踐

為了示範友善,我這裡建立了如下的一些任務,各個任務由包含在對應的目錄中樹形結構大概如下:

jenkins-authority                       目錄類型任務
├── dev-project-group                   目錄類型任務
│   ├── dev-account-service             ***風格任務
│   └── dev-message-service             ***風格任務
├── prod-project-group                  目錄類型任務
│   ├── prod-account-service            ***風格任務
│   └── prod-message-service            ***風格任務
└── test-project-group                  目錄類型任務
    ├── test-account-service            ***風格任務
    └── test-message-service            ***風格任務
           

最後分别用張三、李四、王五賬号登入到 Jenkins 系統看看權限設定的效果。沒有意外的話王五是運維人員角色可以建構和管理 dev、test 和 prod 的任務,李四隻能建構和管理 test 的任務,張三隻能管理和建構 dev 的任務。并且張三、李四也隻能在對應的環境目錄下建立新的任務,不能在其他目錄建立任務。

用開發組張三賬号登陸到 Jenkins ,去到

dev-project-group

目錄和下面的具體某個任務下面,看到左側的菜單欄可以進行修改編輯操作。

如果張三去到測試項目組

test-project-group

和目錄下的具體某個任務,可以看到左側的菜單欄是沒法進行編輯和建構操作的。

然後可以在用測試組賬号李四登陸到 Jenkins 看看是什麼樣的效果:

王五為運維角色,可以管理 dev、test、prod 組的任務:

經過上面的配置,我們的 Jenkins 權限管控就相對精細并且也符合我們的要求和預期了。其實除了對任務進行權限控制外還可以對 Jenkins 節點進行權限控制,隻是一般用不到,并且節點最好是都允許進行任務在上面進行建構執行,否則節點的壓力負載分擔就會出問題。