日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

如果你還不理解 RBAC,看看 Jenkins 如何做到的

來源: 責(zé)編: 時(shí)間:2024-04-08 08:59:01 197觀看
導(dǎo)讀通過本篇你可以學(xué)習(xí)到如下內(nèi)容:RBAC 的基礎(chǔ)知識。Jenkins 的角色權(quán)限插件的使用。實(shí)戰(zhàn):通過角色來管理用戶的部署權(quán)限。一、RBACJenkins 對權(quán)限的支持是比較弱的,存在以下不足:有多個(gè)流水線任務(wù),期望不同用戶能看到的任務(wù)

通過本篇你可以學(xué)習(xí)到如下內(nèi)容:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • RBAC 的基礎(chǔ)知識。
  • Jenkins 的角色權(quán)限插件的使用。
  • 實(shí)戰(zhàn):通過角色來管理用戶的部署權(quán)限。

一、RBAC

Jenkins 對權(quán)限的支持是比較弱的,存在以下不足:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • 有多個(gè)流水線任務(wù),期望不同用戶能看到的任務(wù)不一樣。
  • 一個(gè)項(xiàng)目有多套環(huán)境,期望用戶只能部署某些環(huán)境。
  • 有的項(xiàng)目只讓用戶有查看權(quán)限,期望不給部署權(quán)限。

針對上面的不足,Jenkins 可以通過 RBAC 插件的方式來實(shí)現(xiàn)對權(quán)限的管控。RBAC 是常見的權(quán)限控制方案。vLH28資訊網(wǎng)——每日最新資訊28at.com

RBAC(Role-Based Access Control):基于角色的權(quán)限控制。通過角色關(guān)聯(lián)用戶,角色關(guān)聯(lián)權(quán)限的方式間接賦予用戶權(quán)限。vLH28資訊網(wǎng)——每日最新資訊28at.com

如下圖所示,三個(gè)用戶對應(yīng)了三種角色,每個(gè)角色關(guān)聯(lián)了不同的部署任務(wù),通過這種關(guān)聯(lián)方式間接賦予了用戶權(quán)限。vLH28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

二、角色權(quán)限插件

目前發(fā)現(xiàn)這個(gè)角色權(quán)限插件是比較好用的,推薦給大家使用。vLH28資訊網(wǎng)——每日最新資訊28at.com

插件名:Role-based Authorization Strategy。可以到插件管理那里進(jìn)行安裝,如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

角色權(quán)限策略插件角色權(quán)限策略插件vLH28資訊網(wǎng)——每日最新資訊28at.com

三、選擇授權(quán)策略

Jenkins 自帶了多種授權(quán)策略,如下圖所示,在全局安全設(shè)置中可以選擇授權(quán)策略。vLH28資訊網(wǎng)——每日最新資訊28at.com

對應(yīng)的訪問路徑如下:vLH28資訊網(wǎng)——每日最新資訊28at.com

Dashboard->Manage Jenkins->Configure Global Security

當(dāng)我們安裝好 Role-based Authorization Strategy 插件后,就會出現(xiàn)一個(gè) Role-Base Strategy 授權(quán)策略。vLH28資訊網(wǎng)——每日最新資訊28at.com

Jenkins 授權(quán)策略Jenkins 授權(quán)策略vLH28資訊網(wǎng)——每日最新資訊28at.com

下面開始演示如何基于這個(gè)授權(quán)策略來分配多個(gè)流水線的部署權(quán)限。vLH28資訊網(wǎng)——每日最新資訊28at.com

四、創(chuàng)建演示用戶

為了更好的演示角色權(quán)限管理功能,我創(chuàng)建了 3 個(gè)用戶以及 4 個(gè)流水線任務(wù)。vLH28資訊網(wǎng)——每日最新資訊28at.com

創(chuàng)建用戶的路徑為:vLH28資訊網(wǎng)——每日最新資訊28at.com

http://<你的jenkins地址>:8080/securityRealm/

我在 jenkins 后臺創(chuàng)建了幾個(gè)用戶:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • 開發(fā)組長1:用戶名=passjava-master1
  • 測試組長1:用戶名=passjava-tester1
  • 項(xiàng)目經(jīng)理1:用戶名=passjava-pm1

如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

五、創(chuàng)建演示任務(wù)

我創(chuàng)建了 4 個(gè)部署流水線任務(wù),分別對應(yīng)項(xiàng)目一和項(xiàng)目二的測試和生產(chǎn)環(huán)境。如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

項(xiàng)目一和項(xiàng)目二的測試和生產(chǎn)環(huán)境vLH28資訊網(wǎng)——每日最新資訊28at.com

然后還創(chuàng)建了兩個(gè)分組:正式環(huán)境分組和測試環(huán)境分組。vLH28資訊網(wǎng)——每日最新資訊28at.com

正式環(huán)境分組:demo-prod-envvLH28資訊網(wǎng)——每日最新資訊28at.com

  • 項(xiàng)目一正式環(huán)境:對應(yīng) passjava-prod-project1 任務(wù)
  • 項(xiàng)目二正式環(huán)境:對應(yīng) passjava-prod-project2 任務(wù)

測試環(huán)境分組:demo-test-envvLH28資訊網(wǎng)——每日最新資訊28at.com

  • 項(xiàng)目一測試環(huán)境:對應(yīng) passjava-test-project1 任務(wù)
  • 項(xiàng)目二測試環(huán)境:對應(yīng) passjava-test-project2 任務(wù)

分組的好處是可以歸類以及可以按組分配權(quán)限。vLH28資訊網(wǎng)——每日最新資訊28at.com

六、創(chuàng)建演示角色

6.1 創(chuàng)建角色的頁面路徑

創(chuàng)建角色的路徑如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

創(chuàng)建角色的頁面路徑vLH28資訊網(wǎng)——每日最新資訊28at.com

頁面地址:http://<你的jenkins服務(wù)ip>:8080/manage/role-strategy/訪問路徑:Dashboard->Manage Jenkins->Manage and Assign Roles->Manage Roles

6.2 三種角色

這個(gè)插件可以創(chuàng)建三種角色:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • Global roles:全局角色,例如管理員、作業(yè)創(chuàng)建者、匿名等,允許在全局基礎(chǔ)上設(shè)置總體、代理、任務(wù)、運(yùn)行、查看和 SCM 權(quán)限。
  • Item roles:任務(wù)角色,允許在任務(wù)、分組上設(shè)置特定權(quán)限。
  • Agent roles:Agent 角色,本篇用不上。

6.3 全局角色

全局角色適用于 Jenkins 中的任何任務(wù),并覆蓋你在任務(wù)角色中指定的任何內(nèi)容。也就是說,當(dāng)你在全局角色中授予角色權(quán)限 Job/Read,無論你在任務(wù)角色中指定什么,都允許該角色讀取所有任務(wù)。vLH28資訊網(wǎng)——每日最新資訊28at.com

所以為了分配不同任務(wù)權(quán)限給不同角色,這里對于全局角色勾選一個(gè) Overall Read 權(quán)限即可。如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

我創(chuàng)建了一個(gè)全局角色:passjava,如下圖所示。vLH28資訊網(wǎng)——每日最新資訊28at.com

創(chuàng)建全局角色 passjava創(chuàng)建全局角色 passjavavLH28資訊網(wǎng)——每日最新資訊28at.com

后續(xù)將上面創(chuàng)建的三個(gè)用戶加到這個(gè) Global 角色中即可。vLH28資訊網(wǎng)——每日最新資訊28at.com

注意:如果這三個(gè)用戶不加入到 passjava 角色中的話,后續(xù)這三個(gè)用戶登錄會提示報(bào)錯(cuò),如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

6.4 任務(wù)角色

我創(chuàng)建了三種任務(wù)角色:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • passjava-master:具有部署項(xiàng)目一和項(xiàng)目二的正式環(huán)境的權(quán)限。
  • passjava-tester:具有部署項(xiàng)目一的和項(xiàng)目二的測試環(huán)境的權(quán)限。
  • passjava-pm:具有查看項(xiàng)目一和項(xiàng)目二的正式環(huán)境和測試環(huán)境的權(quán)限,沒有部署權(quán)限。

如下圖所示:vLH28資訊網(wǎng)——每日最新資訊28at.com

項(xiàng)目角色項(xiàng)目角色vLH28資訊網(wǎng)——每日最新資訊28at.com

下面解釋下上面的權(quán)限配置:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • Role:代表角色名稱
  • Pattern:代表正則表達(dá)式。例如,如果將該字段設(shè)置為 passjava-prod.*,則該角色將匹配名稱以 passjava-prod 開頭的所有任務(wù),更多匹配規(guī)則可到該插件的官網(wǎng)上查看。點(diǎn)擊藍(lán)色的 passjava-prod.*,則能看到匹配成功的任務(wù):passjava-prod-project1任務(wù) 和 passjava-prod-project2任務(wù),如下圖所示:

正則表達(dá)式匹配成功 項(xiàng)目正則表達(dá)式匹配成功 項(xiàng)目vLH28資訊網(wǎng)——每日最新資訊28at.com

  • Job:任務(wù)的權(quán)限,我們勾選 Build(部署),Cancel(取消部署),Read(查看任務(wù))即可。

6.5 分配角色

創(chuàng)建好全局角色和任務(wù)角色,我們就可以將用戶加入到對應(yīng)的任務(wù)角色中,用戶和角色是多對多的關(guān)系。比如用戶張三可以具有角色 A 和角色 B 的權(quán)限,角色 A 的權(quán)限也可以給用戶張三和李四。vLH28資訊網(wǎng)——每日最新資訊28at.com

6.5.1 分配全局角色

通過 Assign Roles 功能將三個(gè)用戶都加入到 passjava 角色中。vLH28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

6.5.2 分配項(xiàng)目角色

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

  • 開發(fā)組長具有 passjava-master 權(quán)限,可以部署項(xiàng)目一和項(xiàng)目二的正式環(huán)境。開發(fā)組長登錄系統(tǒng)后看到的任務(wù)列表如下圖所示:

開發(fā)組長查看項(xiàng)目列表開發(fā)組長查看項(xiàng)目列表vLH28資訊網(wǎng)——每日最新資訊28at.com

  • 項(xiàng)目經(jīng)理具有 passjava-pm 權(quán)限,可以查看項(xiàng)目一和項(xiàng)目二的測試和正式環(huán)境的部署情況。項(xiàng)目經(jīng)理登錄系統(tǒng)后看到的任務(wù)列表如下圖所示:

圖片圖片vLH28資訊網(wǎng)——每日最新資訊28at.com

  • 測試組長具有 passjava-tester 權(quán)限,可以部署項(xiàng)目一和項(xiàng)目二的測試環(huán)境。測試組長登錄系統(tǒng)后看到的任務(wù)列表如下圖所示:

而是組長查看項(xiàng)目列表而是組長查看項(xiàng)目列表vLH28資訊網(wǎng)——每日最新資訊28at.com

可以從上面的結(jié)果看出用戶、角色、權(quán)限分配完成,不同的用戶可以部署不同的環(huán)境。vLH28資訊網(wǎng)——每日最新資訊28at.com

七、總結(jié)

通過本篇的學(xué)習(xí),我們了解了 RBAC 以及角色權(quán)限插件的使用。通過實(shí)戰(zhàn)掌握了如何配置不同用戶具有不同角色,不同角色具有不同任務(wù)的權(quán)限,從而可以更安全地管理用戶的部署權(quán)限。vLH28資訊網(wǎng)——每日最新資訊28at.com

回到最開始提到的 Jenkins 的不足之處我們來看看解決方案是怎么樣的:vLH28資訊網(wǎng)——每日最新資訊28at.com

  • 有多個(gè)流水線任務(wù),期望不同用戶能看到的任務(wù)不一樣,解決方案是可以給不同角色分配不同的任務(wù),不同用戶賦予不同角色。如實(shí)戰(zhàn)中的開發(fā)組長和測試組長看到的任務(wù)不一樣。
  • 一個(gè)項(xiàng)目有多套環(huán)境,期望用戶只能部署某些環(huán)境,解決方案是對多套環(huán)境創(chuàng)建對應(yīng)的多個(gè)任務(wù),多個(gè)角色擁有對應(yīng)環(huán)境的任務(wù),并對用戶賦予對應(yīng)環(huán)境的角色。如實(shí)戰(zhàn)中開發(fā)組長只能看到正式環(huán)境的任務(wù)。
  • 有的項(xiàng)目只讓用戶有查看權(quán)限,期望不給部署權(quán)限,解決方案是添加一個(gè)只能查看對應(yīng)項(xiàng)目的任務(wù)的角色,并給用戶賦予這個(gè)角色,如實(shí)戰(zhàn)中項(xiàng)目經(jīng)理1只有查看權(quán)限,沒有部署權(quán)限。

本文鏈接:http://www.www897cc.com/showinfo-26-81868-0.html如果你還不理解 RBAC,看看 Jenkins 如何做到的

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 用C++11打造智能觀察者模式:詳解實(shí)現(xiàn)步驟完整示例代碼

下一篇: 每天都提交代碼,那你知道.git目錄內(nèi)部的秘密嗎?

標(biāo)簽:
  • 熱門焦點(diǎn)
  • Mate60手機(jī)殼曝光 致敬自己的經(jīng)典設(shè)計(jì)

    8月3日消息,今天下午博主數(shù)碼閑聊站帶來了華為Mate60的第三方手機(jī)殼圖,可以讓我們在真機(jī)發(fā)布之前看看這款華為全新旗艦的大致輪廓。從曝光的圖片看,Mate 60背后攝像頭面積依然
  • 俄羅斯:將審查iPhone等外國公司設(shè)備 保數(shù)據(jù)安全

    iPhone和特斯拉都屬于在各自領(lǐng)域領(lǐng)頭羊的品牌,推出的產(chǎn)品也也都是數(shù)一數(shù)二的,但對于一些國家而言,它們的產(chǎn)品可靠性和安全性還是在限制范圍內(nèi)。近日,俄羅斯聯(lián)邦通信、信息技術(shù)
  • 摸魚心法第一章——和配置文件說拜拜

    為了能摸魚我們團(tuán)隊(duì)做了容器化,但是帶來的問題是服務(wù)配置文件很麻煩,然后大家在群里進(jìn)行了“親切友好”的溝通圖片圖片圖片圖片對比就對比,簡單對比下獨(dú)立配置中心和k8s作為配
  • 多線程開發(fā)帶來的問題與解決方法

    使用多線程主要會帶來以下幾個(gè)問題:(一)線程安全問題  線程安全問題指的是在某一線程從開始訪問到結(jié)束訪問某一數(shù)據(jù)期間,該數(shù)據(jù)被其他的線程所修改,那么對于當(dāng)前線程而言,該線程
  • “又被陳思誠騙了”

    作者|張思齊 出品|眾面(ID:ZhongMian_ZM)如今的國產(chǎn)懸疑電影,成了陳思誠的天下。最近大爆電影《消失的她》票房突破30億斷層奪魁暑期檔,陳思誠再度風(fēng)頭無兩。你可以說陳思誠的
  • iQOO 11S新品發(fā)布會

    iQOO將在7月4日19:00舉行新品發(fā)布會,推出杭州亞運(yùn)會電競賽事官方用機(jī)iQOO 11S。
  • 超級標(biāo)準(zhǔn)版旗艦!iQOO 11S全球首發(fā)iQOO超算獨(dú)顯芯片

    上半年已接近尾聲,截至目前各大品牌旗下的頂級旗艦都已悉數(shù)亮相,而下半年即將推出的頂級旗艦已經(jīng)成為了數(shù)碼圈爆料的主流,其中就包括全新的iQOO 11S系
  • Android 14發(fā)布:首批適配機(jī)型公布

    5月11日消息,谷歌在今天凌晨舉行了I/O大會,本次發(fā)布會谷歌帶來了自家的AI語言模型PaLM 2、谷歌Pixel Fold折疊屏、谷歌Pixel 7a手機(jī),同時(shí)發(fā)布了Androi
  • 滴滴違法違規(guī)被罰80.26億 共存在16項(xiàng)違法事實(shí)

    滴滴違法違規(guī)被罰80.26億 存在16項(xiàng)違法事實(shí)開始于2121年7月,歷經(jīng)一年時(shí)間,網(wǎng)絡(luò)安全審查辦公室對“滴滴出行”網(wǎng)絡(luò)安全審查終于有了一個(gè)暫時(shí)的結(jié)束。據(jù)“網(wǎng)信
Top 主站蜘蛛池模板: 毕节市| 北票市| 恭城| 安宁市| 偃师市| 翼城县| 塔河县| 色达县| 阳谷县| 安国市| 买车| 武平县| 景泰县| 桐庐县| 拉萨市| 依安县| 淮阳县| 定日县| 阿合奇县| 曲麻莱县| 额尔古纳市| 昂仁县| 河源市| 阿坝县| 巴塘县| 新安县| 杭锦旗| 延庆县| 乌鲁木齐县| 连南| 阆中市| 成都市| 新干县| 呼伦贝尔市| 定襄县| 龙门县| 阿克| 屯昌县| 根河市| 于田县| 奉贤区|