編輯導語:我們在日常生活中無論是坐公交還是點餐,都會接觸各種各樣的小程序。在使用小程序的背后,你知道其設計原理嗎?今天,本文作者分享了她設計后臺管理系統的過程,并且對權限模塊進行了解析,希望看后對你有幫助。
前言:
市面上可參考的后臺管理系統并不多,也無法參考競品的后臺,對于初出設計后臺管理系統的同學來說,設計其中的基礎功能,成為了一件困難的事情。
做了三個后臺管理系統,才慢慢熟悉了基礎架構和必備功能模塊,于是梳理出來和大家一起分享。本文中提到的后臺管理管理,僅適用于移動端(例如小程序/APP)的管理,不適配大型saas平臺。
后臺管理系統(下文中統稱后臺)中,比較核心的模塊是權限模塊的設計。我總結出一套通用方案,可供大家學習和借鑒優化。
首先,要清楚一些名詞和定義還有模型,才能更好地理解權限系統。
一、定義解釋與權限模型
- 用戶:指系統的登錄用戶,可以理解為一系列的操作人員,例如運營同事小張,銷售小王等;
- 角色:指用戶在系統中擔任的角色,是系統賦予用戶的頭銜,例如總經理、運營、測試等,多于崗位和職責掛鉤,用于配置對應崗位的各類權限;
- 權限:能夠訪問某接口或者做某操作的授權資格;
- 菜單權限:指對應后臺中的一級菜單/二級菜單的頁面訪問權限,比如訂單管理-拼團訂單列表;
- 操作權限:指后臺對數據進行新增、刪除、修改、查看、導出等操作的權限;
- 數據權限:指該角色可以查看或者操作的數據范圍,例如銷售人員錄入了客戶信息,那么每個銷售只能看到自己創建的數據,不可以看到其他銷售的數據,這是一種常見的數據權限范圍。
介紹完名詞的定義,下面講解的是RBAC權限模型。
RBAC權限模型:RBAC,即基于角色的訪問控制(Role-Based Access Control),是優秀的權限控制模型,主要通過角色和權限建立管理,再賦予用戶不同的角色,來實現權限控制的目標。
利用該模型來配置權限,直接優點是角色的數量比用戶的數量更少,先把權限賦予角色,即可完成權限的分配;再為用戶分配相應的角色,即可直接獲得角色擁有的權限。
交互設計的福音,只需定義有限的角色擁有哪些菜單權限即可。
二、功能設計
進入簡單易懂的看原型做功能環節,稍有經驗的產品經理,看了界面就應該知道這個功能大概是怎么設計了。此章節內容包括:賬號管理、角色權限管理、菜單管理。
1. 賬號管理
在我設計的系統里,融合的組織架構管理。
組織架構管理就不展開說了,就是對公司的架構進行設置,此處會影響用戶的數據權限,因為用戶的數據權限是根據組織架構的樹來進行匹配,這個后文再詳細講解。
新建時,設置當前員工的賬號,配置對應的角色。因為我們設計了微信登錄和公眾號推送消息給內部人員,所以需要綁定用戶的微信號。
2. 菜單管理
菜單管理主要為前端人員使用,用于配置系統的菜單,包括菜單的層級,增刪改等。此處不做過多解釋。如果涉及到設計此需求,提出對應需求即可,前端會根據具體情況進行研發。
3. 角色管理
角色管理中,包括的整個權限模塊的核心,菜單權限和數據權限。
配置菜單權限,即為配置用戶的頁面訪問權限和操作權限。此處較好理解,在設計需求時,需要根據業務具體描述需要被權限控制的功能。
我一般是要求研發將頁面中可以點擊的按鈕都做權限控制,這樣后續權限配置就會比較靈活。
數據權限目前我遇到的業務場景需要包括:僅查看本人數據/查看本人及以下人員數據/查看本部門數據/查看全部數據/自定義數據。
1)查看本人數據
顧名思義,就是只能查看自己創建的數據。例如為了避免惡性競爭,企業中員工王五和肖六各自名下有不同的客戶,所以他們在后臺查詢客戶的時候,都只能查看自己名下的客戶。
2)查看本人及以下數據
例如在組織架構中,你是一個小組的組長張三(圖中左下角),下面有兩個小弟A和B。那么配置完畢(需要在組織架構中將你配置為負責人),你可以看到你的數據加你小弟的數據。
3)查看本部門數據
你繼續當張三,如果配置了查看本部門數據,則跟你平級的小組數據,你都可以查看。例如你可以查看小組1和小組2的全部數據。
4)查看全部數據
一般是總經辦的權限,老板當然可以查看所有人的數據啦。
5)自定義數據
可以配置某個角色,查看某個具體的人員的數據,這個業務場景比較特殊,可能并不是很通用。例如,銷售助理,可以查看部分銷售人員的數據,進行工作檢查。
三、其他權限
這里是指一些包含在業務中的特殊權限,比如字段的可見性。如果要控制權限到字段的顆粒度,就需要把每個功能頁面的字段提煉出來,單獨配置給角色。還比如一些敏感數據的可見性。
例如:某個用戶的手機號對部分角色可見、部分角色加密。這個部分要單獨設計在操作權限里,單獨列出。
四、結語
市面上做的好的saas系統都有較為完善的權限系統,具體可以參考紛享銷客、salesforce等,雖然我看salesforce有點看不懂,感興趣的可以研究一下。
取其精華,為其所用。
本文由@Olivia 原創發布于人人都是產品經理,未經許可,禁止轉載。
題圖來自Unsplash, 基于CC0協議
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。