權限管理的好處和壞處(權限管理的前世今生)
2023-10-21 07:55:13 3
編輯導語:「權限管理」在日常生活中十分常見,它規定了用戶各自的角色和可使用的職能。那麼,在B端產品中,「權限管理」應該如何設計?本篇文章裡,作者針對權限管理系統的發展和設計策略做了解讀,一起來看一下吧。
什麼是權限管理?百度百科解釋道:權限管理,一般指根據系統設置的安全規則或者安全策略 ,用戶可以訪問而且只能訪問自己被授權的資源,不多不少。
何為「不多不少」?簡單來講,就是「用戶」可以「做什麼」,以及可以「做到什麼程度」,都是通過權限管理來控制。
一、「前世」的權限縮影在我們的生活當中,大到國家、政府,小到企業、家庭,到處都透露著「權限」的縮影。
以企業為例,不同的員工,所對應的崗位職責(也就是權限)也不同:
人力資源部經理張三負責公司的員工招聘工作,崗位職責是招人及員工管理;而李四作為人力資源部的一名人事助理,其崗位職責則是員工信息的檔案管理。
以上舉例,局限於崗位職責。還有一些更加豐富、更加細膩的權限管理。比如:
張三是北京分公司的人力資源部經理,他只能夠管理北京分公司員工和北京分公司下屬的子公司(海澱子公司、朝陽子公司等)的員工;王五是海澱子公司的人力資源部經理,他也只能夠管理海澱子公司的員工。
這些崗位職責和資源(也稱為數據)直接相關,又稱為數據級權限管理。
二、「今生」的權限寫照1、現實與權限管理的映射關係
在網際網路行業中,權限管理系統中的角色一般跟企業的組織架構是一致的:企業組織架構中的員工在什麼崗位要做什麼事情,跟權限管理系統中的用戶是什麼角色被允許進行什麼操作,是一種對應關係。
所以企業架構中的員工、崗位、職責和資源 ,分別對應了權限管理系統中的用戶、角色、權限和數據。
2、權限管理的分類
從控制力度來看,可以將權限管理分為兩大類:
從控制方向來看,也可以將權限管理分為兩大類:
從系統獲取數據,比如查詢訂單、查詢客戶資料;向系統提交數據,比如刪除訂單、修改客戶資料。
系統層面的權限管理,主要還是從控制力度上來進行設計。
三、如何進行權限系統設計權限系統主要由三大部分構成:用戶管理、角色管理、權限管理。
1、用戶管理設計
帳號作為一個用戶登錄系統的唯一身份標識,其主要通過用戶管理進行維護,一般包含有列表頁面、詳情頁面、新增頁面。
可以先設想下用戶管理大概需要用到哪些欄位?梳理完的信息結構圖如下:
註:這裡以最小可行性的欄位設計為例,不同的企業所需要的欄位要素會有所增減。
用戶編號:作為用戶的唯一標識,一般由系統自動生成,由低到高遞增;用戶名:用戶用於登錄的帳號,一般支持字母、數字和下劃線,需區分唯一性;密碼:帳號登錄密碼,支持字母、數字和特殊字符,需區分大小寫;角色:數據來源於「角色管理」中已維護的角色,可支持多選。「角色」為什麼要支持多選?咱們下面再講。
為什麼這裡不設計一個詳情頁面?因為欄位較少,列表已經能顯示下所有的欄位要素,所以沒必要再新增一個詳情頁面。只有當列表頁顯示不下所有欄位要素的時候,才有必要設計一個詳情頁來展示所有的用戶信息。
現在信息結構圖有了,接下來就可以開始設計原型,設計完的頁面如下:
(原型:用戶管理)
(原型:新增用戶)
2、角色管理設計
系統中用戶的權限是通過角色來控制,角色可以理解為具備一定權限的用戶組,也叫權限的集合,劃分角色的好處是可以大大降低用戶權限分配的重複性工作量。
「角色管理」的信息結構圖如下:
角色編號:角色的唯一標識,一般由系統自動生成,由低到高遞增;角色名稱:主要用於識別,可限制不可出現相同的角色名稱;上級:選擇所屬上級角色,用於搭建組織架構。
根據信息結構圖所設計的頁面如下:
(原型:角色管理)
(原型:新增角色)
做到這裡,「角色管理」還稱不上結束,因為還差一個最關鍵的「權限」。
3、權限管理設計
上文中已經講過,「權限」分為「功能權限」和「數據權限」。
「功能權限」可粗可細,粗可以到菜單級別,細則可達到功能按鈕級別。
「數據權限」有兩種處理方式:
一種是自動繼承組織架構關係,這種不涉及頁面配置,由程序根據用戶的從屬關係自動關聯。比如:銷售部經理可以查看整個部門的銷售數據,而銷售部的普通員工則只能看到自己的銷售數據;另一種則是由人工自行配置,劃分所需要查看的數據權限。那麼,「角色管理」的信息結構圖,加上「權限」後顯示如下:
(橙色為新增「權限」部分)
在企業中,一個員工可以身兼多個崗位,一個崗位也可能有多個員工,所以員工和崗位是多對多的關係,由此可以得出「用戶」和「角色」之間也是多對多的關係。一個「角色」可以分配多個「權限」,同樣一個「權限」可以分配給多個「角色」使用,故「角色」和「權限」之間也是多對多的關係。
如果一個用戶擁有多個角色,那這個用戶的權限則取的是這多個角色權限的併集。
「角色管理」的頁面加上「權限」後如下:
(原型:角色管理)
(原型:配置數據權限)
(原型:配置功能權限)
另外,頁面上的功能權限展示,建議與系統模塊、菜單頁面的順序來排列好,便於用戶理解。
到此,權限系統差不多就設計完了,後續系統在不斷的更新迭代時,權限系統也需要做對應的調整。大到功能模塊的增、刪,小到功能命名的變更,權限系統都需要做到同步變更,以求一一對應。
四、總結權限管理對於B端產品來說必不可少,權限管理具體應該做到什麼程度,跟企業運營息息相關。在設計權限系統時,一定要結合企業發展,提前做好規劃,才能滿足業務需求。
作者:WOWdesign,研究設計價值最大化,涉及用戶體驗、品牌體驗、空間體驗。
本文由 @WOWdesign 原創發布於人人都是產品經理。未經許可,禁止轉載。
題圖來自Pexels,基於 CC0 協議
,