菜單權(quán)限設(shè)計(jì)實(shí)現(xiàn)

設(shè)計(jì)一款后臺(tái)產(chǎn)品時(shí),用戶角色權(quán)限控制是最常遇到的問(wèn)題,本文以最簡(jiǎn)單最基本菜單權(quán)限設(shè)計(jì)實(shí)現(xiàn),采用具體案例來(lái)說(shuō)明權(quán)限設(shè)計(jì)應(yīng)該怎么實(shí)現(xiàn)。

原始需求:A企業(yè)有員工四名,分別是總裁張三、經(jīng)理李四、員工王五和肖六,為A公司設(shè)計(jì)一款后臺(tái)系統(tǒng),要求每個(gè)員工看到的菜單選項(xiàng)不一致。

1.權(quán)限的作用意義

顧名思義,“權(quán)”代表“權(quán)力”,劃分了系統(tǒng)的職權(quán),不同的用戶擁有不同的權(quán)力劃分;“限”代表“限制”,在權(quán)力劃分的基礎(chǔ)上對(duì)職能范圍進(jìn)行了限制,本文所述的權(quán)限相對(duì)簡(jiǎn)單,賦予不同角色看到不同菜單的權(quán)限。

權(quán)限控制能較好地解決系統(tǒng)安全問(wèn)題,避免公司機(jī)密資料外泄,同時(shí),不同部門(mén)使用系統(tǒng)時(shí)互不干擾,因此被企業(yè)廣泛應(yīng)用。

2.梳理用戶、角色的概念

(1)用戶

用戶是指系統(tǒng)的登錄用戶,可以理解為一系列的人員,例如登錄用戶為張三、李四、王五和肖六這幾個(gè)人。

(2)角色

角色指用戶在系統(tǒng)中擔(dān)任的角色,是系統(tǒng)賦予用戶的頭銜,例如A公司后臺(tái)系統(tǒng)角色可以定義為:總裁、經(jīng)理、員工。

3.選擇合適的權(quán)限模型

(1)傳統(tǒng)的權(quán)限模型

在早期,傳統(tǒng)的權(quán)限模型就是為用戶分配菜單權(quán)限,例如張三看到A、B、C菜單,李四看到B、C菜單,王五和肖六看到A、B、C菜單,這種傳統(tǒng)的權(quán)限模型簡(jiǎn)單粗暴,直接為用戶分配菜單即可,但是隨著公司員工激增,在動(dòng)則數(shù)百人的公司里,沒(méi)一個(gè)員工都要分配一次,顯然效率太低。

并且,在進(jìn)行交互設(shè)計(jì)時(shí),定義數(shù)百名用戶擁有的菜單權(quán)限,那需要寫(xiě)數(shù)百行的表格。

(2)RBAC權(quán)限模型

RBAC,即基于角色的訪問(wèn)控制(Role-Based Access Control),是優(yōu)秀的權(quán)限控制模型,主要通過(guò)角色和權(quán)限建立管理,再賦予用戶不同的角色,來(lái)實(shí)現(xiàn)權(quán)限控制的目標(biāo)。

利用該模型來(lái)配置權(quán)限,直接優(yōu)點(diǎn)是角色的數(shù)量比用戶的數(shù)量更少,先把權(quán)限賦予角色,即可完成權(quán)限的分配;再為用戶分配相應(yīng)的角色,即可直接獲得角色擁有的權(quán)限。

交互設(shè)計(jì)的福音,只需定義有限的角色擁有哪些菜單權(quán)限即可。

(3)模型其他注意事項(xiàng)

在選擇第二種RBAC權(quán)限模型時(shí),需要注意,用戶——角色——權(quán)限之間并非是一對(duì)一的對(duì)應(yīng)關(guān)系,例如,一個(gè)用戶可以擁有多種角色,一個(gè)角色也可以擁有多個(gè)權(quán)限,所以應(yīng)該是多對(duì)多的關(guān)系,需要和開(kāi)發(fā)說(shuō)明清楚。

4.菜單實(shí)現(xiàn)效果

如圖所示,通過(guò)權(quán)限控制后,不同用戶登錄進(jìn)去看到的菜單顯示都不一致,基于角色來(lái)進(jìn)行菜單展示。

(1)總裁角色,菜單A、B、C

(2)經(jīng)理角色,菜單B、C

(2)員工角色,菜單C

@夜雨原創(chuàng)作品,未經(jīng)許可,禁止轉(zhuǎn)載。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容