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

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

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

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

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

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

一、RBAC

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

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

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

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

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

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

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

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

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

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

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

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

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

Dashboard->Manage Jenkins->Configure Global Security

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

6.2 三種角色

這個(gè)插件可以創(chuàng)建三種角色:pT628資訊網(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)容。也就是說(shuō),當(dāng)你在全局角色中授予角色權(quán)限 Job/Read,無(wú)論你在任務(wù)角色中指定什么,都允許該角色讀取所有任務(wù)。pT628資訊網(wǎng)——每日最新資訊28at.com

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

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

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

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

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

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

6.4 任務(wù)角色

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

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

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

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

下面解釋下上面的權(quán)限配置:pT628資訊網(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)目pT628資訊網(wǎng)——每日最新資訊28at.com

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

6.5 分配角色

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

6.5.1 分配全局角色

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

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

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

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

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

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

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

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

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

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

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

七、總結(jié)

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

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

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

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

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

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

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

標(biāo)簽:
  • 熱門焦點(diǎn)
  • 鴻蒙OS 4.0公測(cè)機(jī)型公布:甚至連nova6都支持

    華為全新的HarmonyOS 4.0操作系統(tǒng)將于今天下午正式登場(chǎng),官方在發(fā)布會(huì)之前也已經(jīng)正式給出了可升級(jí)的機(jī)型產(chǎn)品,這意味著這些機(jī)型會(huì)率先支持升級(jí)享用。這次的HarmonyOS 4.0支持
  • K60 Pro官方停產(chǎn) 第三方瞬間漲價(jià)

    雖然沒(méi)有官方宣布,但Redmi的一些高管也已經(jīng)透露了,Redmi K60 Pro已經(jīng)停產(chǎn)且不會(huì)補(bǔ)貨,這一切都是為了即將到來(lái)的K60 Ultra鋪路,屬于廠家的正常操作。但有意思的是該機(jī)在停產(chǎn)之后
  • K60至尊版狂暴引擎2.0加持:超177萬(wàn)跑分?jǐn)孬@性能第一

    Redmi的后性能時(shí)代戰(zhàn)略發(fā)布會(huì)今天下午如期舉辦,在本次發(fā)布會(huì)上,Redmi公布了多項(xiàng)關(guān)于和聯(lián)發(fā)科的深度合作,以及新機(jī)K60 Ultra在軟件和硬件方面的特性,例如:“K60 至尊版,雙芯旗艦
  • 太卷!Redmi MAX 100英寸電視便宜了:12999元買Redmi史上最大屏

    8月5日消息,從小米商城了解到,Redmi MAX 100英寸巨屏電視日前迎來(lái)官方優(yōu)惠,到手價(jià)12999元,比發(fā)布價(jià)便宜了7000元,在大屏電視市場(chǎng)開卷。據(jù)了解,Redmi MAX 100
  • 轎車從天而降電動(dòng)車主被撞身亡 超速搶道所致:現(xiàn)場(chǎng)視頻讓網(wǎng)友吵翻

    近日,上海青浦區(qū)法院判決轎車從天而降電動(dòng)車主被撞身亡案,轎車車主被判有期徒刑一年。案件顯示當(dāng)時(shí)男子駕駛轎車在上海某路段行駛,前車忽然轉(zhuǎn)彎提速超車,
  • 多線程開發(fā)帶來(lái)的問(wèn)題與解決方法

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

    作者|張思齊 出品|眾面(ID:ZhongMian_ZM)如今的國(guó)產(chǎn)懸疑電影,成了陳思誠(chéng)的天下。最近大爆電影《消失的她》票房突破30億斷層奪魁暑期檔,陳思誠(chéng)再度風(fēng)頭無(wú)兩。你可以說(shuō)陳思誠(chéng)的
  • 8月見!小米MIX Fold 3獲得3C認(rèn)證:支持67W快充

    這段時(shí)間以來(lái),包括三星、一加、榮耀等等有不少品牌旗下的最新折疊屏旗艦都得到了不少爆料,而小米新一代折疊屏旗艦——小米MIX Fold 3此前也屢屢被傳
  • “買真退假” 這種“羊毛”不能薅

    □ 法治日?qǐng)?bào) 記者 王春   □ 本報(bào)通訊員 胡佳麗  2020年初,還在上大學(xué)的小東加入了一個(gè)大學(xué)生兼職QQ群。群主&ldquo;七王&rdquo;在群里介紹一些刷單賺
Top 主站蜘蛛池模板: 商河县| 达尔| 富锦市| 齐河县| 广安市| 剑河县| 蓝田县| 临澧县| 邯郸县| 遵义市| 阳朔县| 兰西县| 晴隆县| 柏乡县| 凤城市| 蒙山县| 大厂| 崇礼县| 阳信县| 保靖县| 汉中市| 平陆县| 阳朔县| 永新县| 莱阳市| 上思县| 苏尼特右旗| 华宁县| 长乐市| 安阳县| 阿拉善左旗| 容城县| 乌恰县| 南充市| 龙南县| 宜君县| 平和县| 原阳县| 垫江县| 漳平市| 平江县|