《RBAC角色的權(quán)限管理系統(tǒng)簡介》由會員分享,可在線閱讀,更多相關(guān)《RBAC角色的權(quán)限管理系統(tǒng)簡介(13頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,11/7/2009,#,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,*,RBAC權(quán)限管理,權(quán)限管理,這是每個軟件系統(tǒng)都會涉及到的,而且權(quán)限管理的需求本質(zhì)往往都是一樣,無論角色擁有怎樣的權(quán)限,只要你充當(dāng)了這個角色,你就擁有了這些功能。,舉個簡單例子:一個老師在學(xué)校教室他就擁有教書育人的權(quán)利義務(wù),一個丈夫在家就有呵護(hù)妻子支
2、撐家庭的權(quán)利義務(wù),而一個父親在孩子面前就有保護(hù)孩子,教育孩子的權(quán)利義務(wù)而作為一個男生,我們很可能在不同的場所,成為這些角色,從而擁有了這些權(quán)利義務(wù)。而抽象出來就是用戶,角色和權(quán)利三個方面。所以經(jīng)過前人對權(quán)限方面的總結(jié)抽象,總結(jié)出來RBAC(Role-Based Access Control)基于角色的訪問控制。,RBAC權(quán)限管理,RBAC(Role-Based Access Control,基于角色的訪問控制),就是用戶通過角色與權(quán)限進(jìn)行關(guān)聯(lián)。簡單地說,一個用戶擁有若干角色,每一個角色擁有若干權(quán)限。這樣,就構(gòu)造成“用戶-角色-權(quán)限”的授權(quán)模型。在這種模型中,用戶與角色之間,角色與權(quán)限之間,一般
3、者是多對多的關(guān)系。(如下圖),RBAC權(quán)限管理,RBAC認(rèn)為權(quán)限授權(quán)實際上是Who、What、How的問題。在RBAC模型中,who、what、how構(gòu)成了訪問權(quán)限三元組,也就是“Who對What(Which)進(jìn)行How的操作”。,Who:權(quán)限的擁用者或主體(如Principal、User、Group、Role、Actor等等),What:權(quán)限針對的對象或資源(Resource、Class)。,How:具體的權(quán)限(Privilege,正向授權(quán)與負(fù)向授權(quán))。,Operator:操作。表明對What的How操作。也就是Privilege+Resource,Role:角色,一定數(shù)量的權(quán)限的集合。權(quán)限
4、分配的單位與載體,目的是隔離User與Privilege的邏輯關(guān)系.,Group:用戶組,權(quán)限分配的單位與載體。權(quán)限不考慮分配給特定的用戶而給組。組可以包括組(以實現(xiàn)權(quán)限的繼承),也可以包含用戶,組內(nèi)用戶繼承組的權(quán)限。User與Group是多對多的關(guān)系。Group可以層次化,以滿足不同層級權(quán)限控制的要求。,RBAC權(quán)限管理,當(dāng)用戶的數(shù)量非常大時,要給系統(tǒng)每,個用戶逐一授權(quán)(授角色),是件非,常煩瑣的事情。這時,就需要給用戶,分組,每個用戶組內(nèi)有多個用戶。除,了可給用戶授權(quán)外,還可以給用戶組,授權(quán)。這樣一來,用戶擁有的所有權(quán),限,就是用戶個人擁有的權(quán)限與該用,戶所在用戶組擁有的權(quán)限之和。(下,圖
5、為用戶組、用戶與角色三者的關(guān)聯(lián),關(guān)系),RBAC權(quán)限管理,RBAC1,基于RBAC0模型,進(jìn)行了角色的分層,也就是說角色上有了上下級的區(qū)別,存在了繼承包含關(guān)系,也就是前邊說過的適合于用樹展現(xiàn)的哪種自關(guān)聯(lián)的結(jié)構(gòu),這種模型合適于角色之間的層次明確,包含明確。但是認(rèn)為用第一種模型也是可以的,只不過第一種可能會有數(shù)據(jù)冗余,沒有這種更加面向?qū)ο蠡选?RBAC權(quán)限管理,RBAC2,也是基于RBAC0模型的基礎(chǔ)上,進(jìn)行了角色的訪問控制。a,RBAC2中的一個基本限制時互斥角色的限制,互斥角色是指各自權(quán)限互相制約的兩個角色。對于這類角色一個用戶在某一次活動中只能被分配其中的一個角色,不能同時獲得兩個角色的
6、使用權(quán)。常舉的例子:在審計活動中,一個角色不能同時被指派給會計角色和審計員角色;b,是指角色的權(quán)利權(quán)利是有限的,用戶有用的角色也是有限的,當(dāng)然分配用戶時也是有限的,不能進(jìn)行無限制的分配用戶,例如公司的領(lǐng)導(dǎo)人有限的;c,是指要想獲得較高的權(quán)限,要首先擁有低一級的權(quán)限。,T-ARBAC權(quán)限管理,1)無法滿足租戶訪問控制策略的多樣性要求,傳統(tǒng)情況下,不同企業(yè)間應(yīng)用的部署是分開實施的,并且根據(jù)企業(yè)的不同需求制定不同的權(quán)限管理統(tǒng)。而在多租戶環(huán)境下,傳統(tǒng)的訪問控制模型的使用會使得整個系統(tǒng)資源的分配、角色等級都是全局性的,不能滿足租戶個性化需求。,T-ARBAC權(quán)限管理,2)無法滿足系統(tǒng)用戶類型的增加的要求
7、,傳統(tǒng)的基于角色的訪問控制模型中,系統(tǒng)角色又可分為規(guī)則角色與管理角色,其中規(guī)則角色用來執(zhí)行系統(tǒng)的業(yè)務(wù)功能,而管理角色則用來管理系統(tǒng)中角色的創(chuàng)建、權(quán)限的分配等工作。而在多租戶環(huán)境下,每個租戶都有各自的規(guī)則角色,管理角色,租戶間的規(guī)則、管理角色是分開,同時應(yīng)用的提供者具有更高層次的平臺規(guī)則角色、平臺管理角色,平臺規(guī)則角色用來對所有的租戶進(jìn)行管理,如資源分配,費(fèi)用收取等,而這種管理角色在普通的RBAC是沒有的。,T-ARBAC權(quán)限管理,為使SaaS服務(wù)具有統(tǒng)一的權(quán)限管理模型,本文將服務(wù)提供商與租戶的權(quán)限管理進(jìn)行了統(tǒng)一,并且由于SaaS服務(wù)的用戶類型較以往變得豐富多樣(包括平臺管理用戶、平臺規(guī)則用戶、
8、租戶管理用戶、租戶規(guī)則用戶),提出了一個兩層的訪問控制模型,包括平臺層(服務(wù)提供商)和租戶層(企業(yè)用戶),從而有效地對不同類型的用戶進(jìn)行了區(qū)分,使得他們通過松耦合關(guān)系統(tǒng)一在同一個訪問控制模型中,使得平臺對租戶的管理即得以輕松進(jìn)行,又使得其不會由于權(quán)限過大而對租戶的業(yè)務(wù)產(chǎn)生干擾,實現(xiàn)平臺管理者對租戶的不可干預(yù),有效保障各租戶的隱私。,T-ARBAC權(quán)限管理,SaaS平臺用戶類型,1、平臺管理用戶。負(fù)責(zé)管理平臺的規(guī)則用戶,包括該部分用戶的授權(quán)等工作,其工作與租戶完全沒有交集。,2、平臺規(guī)則用戶。即前文提到的平臺管理員,負(fù)責(zé)平臺日常維護(hù),包括對企業(yè)租戶的各種管理,但是平臺規(guī)則用戶無權(quán)干涉租戶的具體業(yè)
9、務(wù),避免服務(wù)提供商對租戶業(yè)務(wù)干涉帶來的安全問題。,T-ARBAC權(quán)限管理,3)租戶管理用戶:訪問SaaS平臺的企業(yè)用戶,在SaaS平臺中,各租戶之間信息是相互隔離的。租戶信息(如企業(yè)名稱等)主要起到區(qū)別不同的企業(yè)租戶的作用,并且由平臺管理員對租戶狀態(tài)進(jìn)行管理。,4)租戶規(guī)則用戶:根據(jù)租戶管理員分配的權(quán)限以及自己的角色進(jìn)行相關(guān)的業(yè)務(wù)管理的企業(yè)管理人員。,T-ARBAC權(quán)限管理,內(nèi)容總結(jié),RBAC權(quán)限管理。權(quán)限管理,這是每個軟件系統(tǒng)都會涉及到的,而且權(quán)限管理的需求本質(zhì)往往都是一樣,無論角色擁有怎樣的權(quán)限,只要你充當(dāng)了這個角色,你就擁有了這些功能。舉個簡單例子:一個老師在學(xué)校教室他就擁有教書育人的權(quán)利義務(wù),一個丈夫在家就有呵護(hù)妻子支撐家庭的權(quán)利義務(wù),而一個父親在孩子面前就有保護(hù)孩子,教育孩子的權(quán)利義務(wù)。所以經(jīng)過前人對權(quán)限方面的總結(jié)抽象,總結(jié)出來RBAC(Role-Based Access Control)基于角色的訪問控制。RBAC(Role-Based Access Control,基于角色的訪問控制),就是用戶通過角色與權(quán)限進(jìn)行關(guān)聯(lián)。簡單地說,一個用戶擁有若干角色,每一個角色擁有若干權(quán)限。RBAC1,基于RBAC0模型,進(jìn)行了角色的分層,也就是說角色上有了上下級的區(qū)別,存在了繼承包含關(guān)系,也就是前邊說過的適合于用樹展現(xiàn)的哪種自關(guān)聯(lián)的結(jié)構(gòu),這種模型合適于角色之間的層次明確,包含明確,