




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、擴(kuò)展RBAC用戶(hù)角色權(quán)限設(shè)計(jì)方案RBAC(Role-Based Access Control,基于角色的訪(fǎng)問(wèn)控制),就是用戶(hù)通過(guò)角色與權(quán)限進(jìn)行關(guān)聯(lián)。簡(jiǎn)單地說(shuō),一個(gè)用戶(hù)擁有若干角色,每一個(gè)角色擁有若干權(quán)限。這樣,就構(gòu)造成“用戶(hù)-角色-權(quán)限”的授權(quán)模型。在這種模型中,用戶(hù)與角色之間,角色與權(quán)限之間,一般者是多對(duì)多的關(guān)系。(如下圖)角色是什么?可以理解為一定數(shù)量的權(quán)限的集合,權(quán)限的載體。例如:一個(gè)論壇系統(tǒng),“超級(jí)管理員”、“版主”都是角色。版主可管理版內(nèi)的帖子、可管理版內(nèi)的用戶(hù)等,這些是權(quán)限。要給某個(gè)用戶(hù)授予這些權(quán)限,不需要直接將權(quán)限授予用戶(hù),可將“版主”這個(gè)角色賦予該用戶(hù)。 當(dāng)用戶(hù)的數(shù)量
2、非常大時(shí),要給系統(tǒng)每個(gè)用戶(hù)逐一授權(quán)(授角色),是件非常煩瑣的事情。這時(shí),就需要給用戶(hù)分組,每個(gè)用戶(hù)組內(nèi)有多個(gè)用戶(hù)。除了可給用戶(hù)授權(quán)外,還可以給用戶(hù)組授權(quán)。這樣一來(lái),用戶(hù)擁有的所有權(quán)限,就是用戶(hù)個(gè)人擁有的權(quán)限與該用戶(hù)所在用戶(hù)組擁有的權(quán)限之和。(下圖為用戶(hù)組、用戶(hù)與角色三者的關(guān)聯(lián)關(guān)系)在應(yīng)用系統(tǒng)中,權(quán)限表現(xiàn)成什么?對(duì)功能模塊的操作,對(duì)上傳文件的刪改,菜單的訪(fǎng)問(wèn),甚至頁(yè)面上某個(gè)按鈕、某個(gè)圖片的可見(jiàn)性控制,都可屬于權(quán)限的范疇。有些權(quán)限設(shè)計(jì),會(huì)把功能操作作為一類(lèi),而把文件、菜單、頁(yè)面元素等作為另一類(lèi),這樣構(gòu)成“用戶(hù)-角色-權(quán)限-資源”的授權(quán)模型。而在做數(shù)據(jù)表建模時(shí),可把功能操作和資源統(tǒng)一管理,也就是都直
3、接與權(quán)限表進(jìn)行關(guān)聯(lián),這樣可能更具便捷性和易擴(kuò)展性。(見(jiàn)下圖)請(qǐng)留意權(quán)限表中有一列“權(quán)限類(lèi)型”,我們根據(jù)它的取值來(lái)區(qū)分是哪一類(lèi)權(quán)限,如“MENU”表示菜單的訪(fǎng)問(wèn)權(quán)限、“OPERATION”表示功能模塊的操作權(quán)限、“FILE”表示文件的修改權(quán)限、“ELEMENT”表示頁(yè)面元素的可見(jiàn)性控制等。 這樣設(shè)計(jì)的好處有二。其一,不需要區(qū)分哪些是權(quán)限操作,哪些是資源,(實(shí)際上,有時(shí)候也不好區(qū)分,如菜單,把它理解為資源呢還是功能模塊權(quán)限呢?)。其二,方便擴(kuò)展,當(dāng)系統(tǒng)要對(duì)新的東西進(jìn)行權(quán)限控制時(shí),我只需要建立一個(gè)新的關(guān)聯(lián)表“權(quán)限XX關(guān)聯(lián)表”,并確定這類(lèi)權(quán)限的權(quán)限類(lèi)型字符串。這里要注意的是,權(quán)限表與權(quán)限菜單
4、關(guān)聯(lián)表、權(quán)限菜單關(guān)聯(lián)表與菜單表都是一對(duì)一的關(guān)系。(文件、頁(yè)面權(quán)限點(diǎn)、功能操作等同理)。也就是每添加一個(gè)菜單,就得同時(shí)往這三個(gè)表中各插入一條記錄。這樣,可以不需要權(quán)限菜單關(guān)聯(lián)表,讓權(quán)限表與菜單表直接關(guān)聯(lián),此時(shí),須在權(quán)限表中新增一列用來(lái)保存菜單的ID,權(quán)限表通過(guò)“權(quán)限類(lèi)型”和這個(gè)ID來(lái)區(qū)分是種類(lèi)型下的哪條記錄。 到這里,RBAC權(quán)限模型的擴(kuò)展模型的完整設(shè)計(jì)圖如下:隨著系統(tǒng)的日益龐大,為了方便管理,可引入角色組對(duì)角色進(jìn)行分類(lèi)管理,跟用戶(hù)組不同,角色組不參與授權(quán)。例如:某電網(wǎng)系統(tǒng)的權(quán)限管理模塊中,角色就是掛在區(qū)局下,而區(qū)局在這里可當(dāng)作角色組,它不參于權(quán)限分配。另外,為方便上面各主表自身的管理
5、與查找,可采用樹(shù)型結(jié)構(gòu),如菜單樹(shù)、功能樹(shù)等,當(dāng)然這些可不需要參于權(quán)限分配。 以上,是從基本的RBAC模型進(jìn)行了擴(kuò)展,具體的設(shè)計(jì)要根據(jù)項(xiàng)目業(yè)務(wù)的需要作調(diào)整。歡迎大家提出批評(píng)意見(jiàn)!這是我后面加的:具體實(shí)現(xiàn)的話(huà),可通過(guò)表的關(guān)聯(lián)查詢(xún)得到,根據(jù)用戶(hù)ID查詢(xún)到它擁有的角色,再通過(guò)角色查詢(xún)到它所擁有的權(quán)限。例如,查詢(xún)某個(gè)用戶(hù)所有授權(quán)的菜單: select m.* from menu m where exists (select 'X' from privilege_menu pm, privilegee p where
6、 pm.privilege_id = p.privilege_id and p.privilege_type = 'MENU' and pm.menu_id = m.menu_id and exists &
7、#160; (select 'X' from role_privilege rp where rp.privil
8、ege_id = pm.privilege_id and exists (select 'X' from user_role ur where ur.role_id = rp.role_id
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金屬工具在工藝品制作的創(chuàng)新應(yīng)用考核試卷
- 輪椅設(shè)計(jì)與定制考核試卷
- 虛擬IP形象廣告考核試卷
- 理解數(shù)據(jù)一致性在數(shù)據(jù)庫(kù)中的實(shí)現(xiàn)試題及答案
- 行政組織在公共政策中的作用研究試題及答案
- 石墨在生物醫(yī)學(xué)成像材料的設(shè)計(jì)考核試卷
- 選礦設(shè)備故障診斷與維修考核試卷
- 文化用品行業(yè)科技創(chuàng)新考核試卷
- 酒吧經(jīng)營(yíng)策略與酒水銷(xiāo)售技巧考核試卷
- 公路工程施工質(zhì)量試題及答案要點(diǎn)
- 成都設(shè)計(jì)咨詢(xún)集團(tuán)有限公司2025年社會(huì)公開(kāi)招聘(19人)筆試參考題庫(kù)附帶答案詳解
- 2025年度會(huì)計(jì)人員繼續(xù)教育會(huì)計(jì)法律法規(guī)答題活動(dòng)測(cè)試100題答案
- 24秋國(guó)家開(kāi)放大學(xué)《社會(huì)教育及管理》形考任務(wù)1-3參考答案
- 2024年江西省高考化學(xué)試卷(真題+答案)
- 建筑史智慧樹(shù)知到期末考試答案2024年
- 基于MATLAB仿真的烤箱的溫度控制分析
- 22S803 圓形鋼筋混凝土蓄水池
- 冷凍式干燥機(jī)用戶(hù)手冊(cè)(2018.07版)(說(shuō)明書(shū))
- 高三物理高考??贾R(shí)點(diǎn)選擇題歸納
- 《城鎮(zhèn)土地估價(jià)規(guī)程(征求意見(jiàn)稿)
- DB11∕T 1832.4-2021 建筑工程施工工藝規(guī)程 第4部分:砌體結(jié)構(gòu)工程
評(píng)論
0/150
提交評(píng)論