一文讀懂用戶權(quán)限設(shè)計(jì)
為什么要進(jìn)行用戶權(quán)限設(shè)計(jì)?
系統(tǒng)權(quán)限
1. 菜單權(quán)限

2. 按鈕權(quán)限


3. 數(shù)據(jù)權(quán)限




4. 應(yīng)用權(quán)限

三、角色
1. 直接分配
2. 基于角色RBAC模型進(jìn)行分配

-
多對一:即一個角色被多個用戶充當(dāng); -
多對多:即一個角色可以擁有多種權(quán)限。


-
基數(shù)約束:基數(shù)約束是指給一個角色被分配給多少個用戶是有上限的,不能無限制的添加,即如果創(chuàng)建了總經(jīng)理的角色,那這個角色被賦予的用戶數(shù)是有限的,當(dāng)超過時,該角色將不能再分配給用戶。 -
角色互斥:角色互斥是指一個用戶不可能同時擁有多個互斥的角色,就像財(cái)務(wù)系統(tǒng)種,一個用戶不能同時擁有財(cái)務(wù)和會計(jì)的角色。 -
先決條件:先決條件是指用戶要想獲得高層級的權(quán)限,必須先擁有低層級的權(quán)限,好比如必須先擁有財(cái)務(wù)助理的權(quán)限,才能擁有財(cái)務(wù)經(jīng)理的權(quán)限。 -
運(yùn)行互斥:運(yùn)行互斥是指使用時只能選擇一個角色進(jìn)行使用,好比如老師和家長,一個用戶即可能家長也可能是老師,那在使用時,只能選擇使用家長的角色或者時老師的角色,不能2個角色同時使用。
四、用戶、角色、權(quán)限之間的關(guān)系
-
用戶:即系統(tǒng)訪問的操作者,可以理解為登錄系統(tǒng)的用戶; -
權(quán)限:即被允許訪問或某種操作的授權(quán)資格,一般可以理解為對系統(tǒng)的增刪改查權(quán)限; -
角色:即具有同類相同操作權(quán)限的用戶。
-
用戶組:用戶的集合。當(dāng)用戶數(shù)量較多時,可以給用戶進(jìn)行分組。當(dāng)公司有新員工入職或者需要給員工分配其他角色時,只需要將用戶加入用戶組,那么該用戶就自動擁有了該用戶組的權(quán)限,無需再一一設(shè)置了。 -
角色組:角色的集合,當(dāng)多個角色均需擁有相同的權(quán)限時,可以采用角色組,例如行政人員,HR均需看到公司的員工信息,那么此時可以將HR、行政建立一個角色組,再將查看員工信息的權(quán)限賦予該用戶組,那么用戶組內(nèi)的角色就自動擁有了這些權(quán)限。 -
權(quán)限組:權(quán)限的集合,可以給權(quán)限設(shè)置一個權(quán)限組,例如可以將查看查看員工業(yè)績、查看客戶信息關(guān)聯(lián)成一個權(quán)限組,當(dāng)下次需要給用戶賦予權(quán)限時,直接選擇該權(quán)限組即可,就不需要一一去設(shè)置多個權(quán)限了。

