權限管理之三權分立設計模型
編輯導讀:權限管理是一個基礎功能,如何滿足多用戶,多層級,多部門,甚至多租戶的需求?本文作者對此進行了分析,與你分享。
權限管理如何才能滿足多用戶,多層級,多部門,甚至多租戶的需求。對應SaaS平臺的權限設計如何能滿足不同用戶的不同的需求。對應平臺型產(chǎn)品如何結合業(yè)務場景設計靈活的權限管理系統(tǒng)。
我認為要遵循三個原則:
- 層級要夠,預留拓展空間
- 權限分離,可實現(xiàn)排列組合
- 專業(yè)平臺用行業(yè)術語,降低學習成本
接下來以機器學習平臺權限設計舉例,給大家介紹一下權限設計流程和框架。
一、機器學習平臺權限管理設計
1. 名詞解釋
- 租戶:指的是使用機器學習平臺的一家企業(yè)或者機構
- 業(yè)務線:指使用機器學習平臺的一家企業(yè)或者機構下面的業(yè)務線
- 平臺管理員:指的是機器學習平臺的管理員,可開通租戶管理員賬號
- 租戶管理員:指租戶管理人員,可開通該租戶下的用戶賬號
2. 數(shù)據(jù)權限設計架構圖
租戶管理員可創(chuàng)建業(yè)務線,及業(yè)務線下的用戶,每個用戶可同時屬于多個業(yè)務線,但只能屬于1個租戶。
3. 操作流程
1)創(chuàng)建租戶
平臺管理員登錄,點擊創(chuàng)建租戶
2)創(chuàng)建租戶管理員
平臺管理員創(chuàng)建租戶管理員
租戶選中為下拉單選
3)創(chuàng)建業(yè)務線
租戶管理員創(chuàng)建業(yè)務線
4)創(chuàng)建用戶
租戶管理員創(chuàng)建用戶
業(yè)務線為下拉多選
5)創(chuàng)建角色
平臺管理員和租戶管理員都可創(chuàng)建角色
創(chuàng)建角色和賦予角色三個權限
- 頁面權限
- 操作權限
- 數(shù)據(jù)權限
創(chuàng)建角色
分配菜單權限
分配功能權限
分配數(shù)據(jù)權限
數(shù)據(jù)權限分配為單選
- 租戶數(shù)據(jù):為該租戶下所有數(shù)據(jù)權限
- 業(yè)務線數(shù)據(jù):為該角色用戶所屬業(yè)務線數(shù)據(jù)權限
- 個人數(shù)據(jù):只能查看個人數(shù)據(jù)
二、三權分立
通過以上案例可以看出,是把菜單權限、頁面權限、數(shù)據(jù)權限賦予角色,把角色賦予用戶,用戶屬于業(yè)務線,業(yè)務線歸屬于租戶。
頁面權限:
頁面權限是指針對系統(tǒng)中具體的頁面有訪問的權限。例:整個系統(tǒng)中有三十個頁面,A員工權限只能查看其中的十個頁面。
操作權限:
操作權限是指系統(tǒng)中的功能按鈕有具體的操作權限。例:A員工在查看到十個頁面里,其中一個頁面是模型管理頁面,但是A不是運營人員,所以只能查詢模型信息,而不能對模型進行新增、修改、刪除等操作權限。
數(shù)據(jù)權限:
數(shù)據(jù)權限是指能夠查看或下載的數(shù)據(jù)范圍的權限,例:模型管理頁面中包當前渠道下所有模型列表。不同角色在同一個頁面看到的信息是不同的。渠道管理員可以看到所有模型。而工程師只能看到自己創(chuàng)建的模型。
三、總結
以上的權限設計模型是RBAC模型,基于角色的訪問控制(Role-Based Access Control),再在角色授權上實施三權分立,使得權限管理更靈活。當然,針對不同的業(yè)務線權限設計也不盡相同,但是對應多用戶的系統(tǒng),還是傾向于“殺雞用牛刀”,因為隨著業(yè)務發(fā)展,再拓展權限的話成本會跟高,權限管理必須要有頂層設計,早比晚好。
#專欄作家#
老張,人人都是產(chǎn)品經(jīng)理專欄作家。《人工智能產(chǎn)品經(jīng)理技能圖譜:AI技術與能力升級》作者,AI產(chǎn)品經(jīng)理,專注于自然語言處理和圖像識別領域。現(xiàn)智能保險創(chuàng)業(yè)公司合伙人,希望與人工智能領域創(chuàng)業(yè)者多多交流。
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉載
題圖來自 Unsplash,基于 CC0 協(xié)議
張老師你好,您的文章里面我有兩個問題沒看明白:1??功能權限配置中不同的操作,是怎么配置上去的?2??業(yè)務線和菜單有什么關聯(lián)?
1,功能權限配置中不同的操作,是怎么配置上去的?答:增刪改查等按鈕都是程序寫死的,每增加一個操作權限就需要程序員寫一遍。
2,業(yè)務線和菜單有什么關聯(lián)?答:業(yè)務線是租戶下的分支,和菜單沒有關聯(lián)。菜單和角色有關聯(lián),角色和菜單有關聯(lián)。業(yè)務線主要區(qū)分數(shù)據(jù)權限。
菜單權限和功能權限的區(qū)別沒看出不同~~是多了“編輯”的選擇嗎??還是說是想表達字段權限??題目是三權分立·~為啥后面一帶而過了~~很想看三權分立后,對應的三員是怎樣的操作流程。shsky231,剛好也在學習這塊,可以交流一下么~~
當給了菜單下的操作權限,但是沒有給菜單權限怎么搞?會感覺矛盾嗎?
不會呀,沒有菜單權限就看不到相應的操作按鈕,給與不給就沒有關系了,因為用戶根本點不到
一般而已,操作按鈕是和菜單綁定在一起的,多對一
一般情況下,菜單權限的優(yōu)先級高于操作權限的優(yōu)先級,只要分配低優(yōu)先級的功能必須先分配高優(yōu)先級的功能,否則會出現(xiàn)有刪除權限卻找不到操作位置的尷尬情況(刪除按鈕在列表頁面,卻沒有分配查看列表頁面的權限)。
具體做法可以通過交互的方式解決,比如檢測到勾選低優(yōu)先級的功能就自動幫助勾選高優(yōu)先級的,或者通過提示性的文字幫助用戶組合勾選。
嗯嗯,可以通過這種方法來解決權限和頁面不統(tǒng)一情況。
您好 那新建頁面算是菜單權限嗎 如果我分配了新建按鈕的權限 我沒有分配新建頁面的權限呢 也同樣依靠于高低優(yōu)先級來自動勾選嗎?
還是說和這個按鈕相關的頁面(無論是承載這個按鈕操作的頁面 還是按鈕操作跳轉的頁面)均進行優(yōu)先級的自動提示?
不錯!有所指引
什么玩意