「權(quán)限管理」模塊設(shè)計
在企業(yè)內(nèi)部的管理后臺,常常會涉及到管理權(quán)限,不同的角色所開啟的權(quán)限不一樣。那么「權(quán)限管理」模塊該怎么設(shè)計?本文對此進行總結(jié),一起來看看吧。
我們登錄系統(tǒng)的賬號,不是一個獨立存在的賬號。(前文《「用戶管理」模塊設(shè)計》內(nèi)新增過的用戶。)它在注冊的時候就已經(jīng)被賦予了一個或多個角色及一個或多個數(shù)據(jù)權(quán)限。用戶、角色、數(shù)據(jù)權(quán)限均是系統(tǒng)的底層概念。也是業(yè)務(wù)邏輯和功能邏輯的實現(xiàn)基礎(chǔ)。
RBAC模型定義了以下幾個核心概念:
- 角色(Role):指系統(tǒng)中具有一組相關(guān)權(quán)限的抽象概念,代表了用戶的身份或職能,如:管理員、查詢員等。
- 權(quán)限(Permission):指對系統(tǒng)資源進行操作的許可,如:讀取、寫入、修改等。
- 用戶(User):指系統(tǒng)的實際使用者。
- 分配(Assignment):指將角色與用戶關(guān)聯(lián)起來,以賦予用戶相應(yīng)權(quán)限。
RBAC模型可是實現(xiàn)靈活且易于管理的訪問控制策略。管理員可以通過分配和調(diào)整角色,來管理用戶的權(quán)限。這種角色層次結(jié)構(gòu)可以幫助簡化權(quán)限管理,并確保用戶只有所需的權(quán)限。
一、功能的目的和價值
- 用戶權(quán)限與系統(tǒng)角色關(guān)聯(lián);
- 系統(tǒng)角色與數(shù)據(jù)權(quán)限關(guān)聯(lián);
- 促進實現(xiàn)系統(tǒng)的業(yè)務(wù)邏輯和功能邏輯。
二、詳細方案
1. 方案概述
權(quán)限管理包含:角色管理和數(shù)據(jù)權(quán)限兩部分。
- 角色管理:分增、刪、改、查、配置權(quán)限五部分功能實現(xiàn)。
- 數(shù)據(jù)權(quán)限:分功能模塊及其功能的實際操作。
2. 功能詳情
(1)角色管理
角色:一個抽象概念,可以理解為團隊名稱,關(guān)聯(lián)在角色下的用戶都是該團隊的成員之一。
角色列表通用字段:角色名稱、狀態(tài)、更新時間、操作;
新增/修改角色字段:角色名稱、狀態(tài);
(2)數(shù)據(jù)權(quán)限
A. 單一權(quán)限
權(quán)限:對系統(tǒng)資源進行操作的許可。
數(shù)據(jù)權(quán)限:即“我的數(shù)據(jù)”。由于業(yè)務(wù)的需要,數(shù)據(jù)會在不同的用戶之間進行數(shù)據(jù)流轉(zhuǎn)。因配置了數(shù)據(jù)權(quán)限,則用戶可操作讀取、寫入、修改等操作。未配置則不可見。
權(quán)限配置:角色創(chuàng)建成功后在列表中點擊【權(quán)限配置】配置角色權(quán)限。
用戶、角色、權(quán)限可以是一對一的關(guān)系,也可以是一對多的關(guān)系或多對多的關(guān)系。
權(quán)限配置細化到每個功能模塊的增、刪、改、查、審批、導入、導出等。
如產(chǎn)品較復(fù)雜,權(quán)限配置可從功能模塊到頁面再到操作按鈕。
注:系統(tǒng)默認一個超級管理員角色,這個角色不可刪除。
B. 覆蓋權(quán)限
權(quán)限覆蓋:當用戶訪問某一數(shù)據(jù)記錄時,用戶需要同步查看該數(shù)據(jù)記錄關(guān)聯(lián)的其他數(shù)據(jù)。即:用戶需要獲取數(shù)據(jù)流轉(zhuǎn)時相關(guān)聯(lián)的數(shù)據(jù)訪問權(quán)限。
總結(jié):權(quán)限管理包含:用戶管理、角色管理、權(quán)限配置三部分。此三部分相互關(guān)聯(lián),相互作用。是系統(tǒng)的底層概念,也是業(yè)務(wù)邏輯和功能邏輯實現(xiàn)的基礎(chǔ)。
本文由 @帥嘟嘟 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載
題圖來自Unsplash,基于CC0協(xié)議
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)
- 目前還沒評論,等你發(fā)揮!