權(quán)限管理的“前世今生”

19 評(píng)論 16747 瀏覽 178 收藏 12 分鐘

編輯導(dǎo)語(yǔ):“權(quán)限管理”在日常生活中十分常見(jiàn),它規(guī)定了用戶各自的角色和可使用的職能。那么,在B端產(chǎn)品中,“權(quán)限管理”應(yīng)該如何設(shè)計(jì)?本篇文章里,作者針對(duì)權(quán)限管理系統(tǒng)的發(fā)展和設(shè)計(jì)策略做了解讀,一起來(lái)看一下吧。

什么是權(quán)限管理?百度百科解釋道:權(quán)限管理,一般指根據(jù)系統(tǒng)設(shè)置的安全規(guī)則或者安全策略 ,用戶可以訪問(wèn)而且只能訪問(wèn)自己被授權(quán)的資源,不多不少。

何為“不多不少”?簡(jiǎn)單來(lái)講,就是“用戶”可以“做什么”,以及可以“做到什么程度”,都是通過(guò)權(quán)限管理來(lái)控制。

一、“前世”的權(quán)限縮影

在我們的生活當(dāng)中,大到國(guó)家、政府,小到企業(yè)、家庭,到處都透露著“權(quán)限”的縮影。

以企業(yè)為例,不同的員工,所對(duì)應(yīng)的崗位職責(zé)(也就是權(quán)限)也不同:

  1. 人力資源部經(jīng)理張三負(fù)責(zé)公司的員工招聘工作,崗位職責(zé)是招人及員工管理;
  2. 而李四作為人力資源部的一名人事助理,其崗位職責(zé)則是員工信息的檔案管理。

以上舉例,局限于崗位職責(zé)。還有一些更加豐富、更加細(xì)膩的權(quán)限管理。比如:

  1. 張三是北京分公司的人力資源部經(jīng)理,他只能夠管理北京分公司員工和北京分公司下屬的子公司(海淀子公司、朝陽(yáng)子公司等)的員工;
  2. 王五是海淀子公司的人力資源部經(jīng)理,他也只能夠管理海淀子公司的員工。

這些崗位職責(zé)和資源(也稱為數(shù)據(jù))直接相關(guān),又稱為數(shù)據(jù)級(jí)權(quán)限管理。

二、“今生”的權(quán)限寫照

1、現(xiàn)實(shí)與權(quán)限管理的映射關(guān)系

在互聯(lián)網(wǎng)行業(yè)中,權(quán)限管理系統(tǒng)中的角色一般跟企業(yè)的組織架構(gòu)是一致的:企業(yè)組織架構(gòu)中的員工在什么崗位要做什么事情,跟權(quán)限管理系統(tǒng)中的用戶是什么角色被允許進(jìn)行什么操作,是一種對(duì)應(yīng)關(guān)系。

所以企業(yè)架構(gòu)中的員工、崗位、職責(zé)和資源 ,分別對(duì)應(yīng)了權(quán)限管理系統(tǒng)中的用戶、角色、權(quán)限和數(shù)據(jù)。

2、權(quán)限管理的分類

從控制力度來(lái)看,可以將權(quán)限管理分為兩大類:

  1. 功能級(jí)權(quán)限管理;
  2. 數(shù)據(jù)級(jí)權(quán)限管理。

從控制方向來(lái)看,也可以將權(quán)限管理分為兩大類:

  1. 從系統(tǒng)獲取數(shù)據(jù),比如查詢訂單、查詢客戶資料;
  2. 向系統(tǒng)提交數(shù)據(jù),比如刪除訂單、修改客戶資料。

系統(tǒng)層面的權(quán)限管理,主要還是從控制力度上來(lái)進(jìn)行設(shè)計(jì)。

三、如何進(jìn)行權(quán)限系統(tǒng)設(shè)計(jì)

權(quán)限系統(tǒng)主要由三大部分構(gòu)成:用戶管理、角色管理、權(quán)限管理。

1、用戶管理設(shè)計(jì)

賬號(hào)作為一個(gè)用戶登錄系統(tǒng)的唯一身份標(biāo)識(shí),其主要通過(guò)用戶管理進(jìn)行維護(hù),一般包含有列表頁(yè)面、詳情頁(yè)面、新增頁(yè)面。

可以先設(shè)想下用戶管理大概需要用到哪些字段?梳理完的信息結(jié)構(gòu)圖如下:

注:這里以最小可行性的字段設(shè)計(jì)為例,不同的企業(yè)所需要的字段要素會(huì)有所增減。

  • 用戶編號(hào):作為用戶的唯一標(biāo)識(shí),一般由系統(tǒng)自動(dòng)生成,由低到高遞增;
  • 用戶名:用戶用于登錄的賬號(hào),一般支持字母、數(shù)字和下劃線,需區(qū)分唯一性;
  • 密碼:賬號(hào)登錄密碼,支持字母、數(shù)字和特殊字符,需區(qū)分大小寫;
  • 角色:數(shù)據(jù)來(lái)源于“角色管理”中已維護(hù)的角色,可支持多選。

“角色”為什么要支持多選?咱們下面再講。

為什么這里不設(shè)計(jì)一個(gè)詳情頁(yè)面?因?yàn)樽侄屋^少,列表已經(jīng)能顯示下所有的字段要素,所以沒(méi)必要再新增一個(gè)詳情頁(yè)面。只有當(dāng)列表頁(yè)顯示不下所有字段要素的時(shí)候,才有必要設(shè)計(jì)一個(gè)詳情頁(yè)來(lái)展示所有的用戶信息。

現(xiàn)在信息結(jié)構(gòu)圖有了,接下來(lái)就可以開(kāi)始設(shè)計(jì)原型,設(shè)計(jì)完的頁(yè)面如下:

(原型:用戶管理)

(原型:新增用戶)

2、角色管理設(shè)計(jì)

系統(tǒng)中用戶的權(quán)限是通過(guò)角色來(lái)控制,角色可以理解為具備一定權(quán)限的用戶組,也叫權(quán)限的集合,劃分角色的好處是可以大大降低用戶權(quán)限分配的重復(fù)性工作量。

“角色管理”的信息結(jié)構(gòu)圖如下:

  • 角色編號(hào):角色的唯一標(biāo)識(shí),一般由系統(tǒng)自動(dòng)生成,由低到高遞增;
  • 角色名稱:主要用于識(shí)別,可限制不可出現(xiàn)相同的角色名稱;
  • 上級(jí):選擇所屬上級(jí)角色,用于搭建組織架構(gòu)。

根據(jù)信息結(jié)構(gòu)圖所設(shè)計(jì)的頁(yè)面如下:

(原型:角色管理)

(原型:新增角色)

做到這里,“角色管理”還稱不上結(jié)束,因?yàn)檫€差一個(gè)最關(guān)鍵的“權(quán)限”。

3、權(quán)限管理設(shè)計(jì)

上文中已經(jīng)講過(guò),“權(quán)限”分為“功能權(quán)限”和“數(shù)據(jù)權(quán)限”。

“功能權(quán)限”可粗可細(xì),粗可以到菜單級(jí)別,細(xì)則可達(dá)到功能按鈕級(jí)別。

“數(shù)據(jù)權(quán)限”有兩種處理方式:

  1. 一種是自動(dòng)繼承組織架構(gòu)關(guān)系,這種不涉及頁(yè)面配置,由程序根據(jù)用戶的從屬關(guān)系自動(dòng)關(guān)聯(lián)。比如:銷售部經(jīng)理可以查看整個(gè)部門的銷售數(shù)據(jù),而銷售部的普通員工則只能看到自己的銷售數(shù)據(jù);
  2. 另一種則是由人工自行配置,劃分所需要查看的數(shù)據(jù)權(quán)限。

那么,“角色管理”的信息結(jié)構(gòu)圖,加上“權(quán)限”后顯示如下:

(橙色為新增“權(quán)限”部分)

在企業(yè)中,一個(gè)員工可以身兼多個(gè)崗位,一個(gè)崗位也可能有多個(gè)員工,所以員工和崗位是多對(duì)多的關(guān)系,由此可以得出“用戶”和“角色”之間也是多對(duì)多的關(guān)系。一個(gè)“角色”可以分配多個(gè)“權(quán)限”,同樣一個(gè)“權(quán)限”可以分配給多個(gè)“角色”使用,故“角色”和“權(quán)限”之間也是多對(duì)多的關(guān)系。

如果一個(gè)用戶擁有多個(gè)角色,那這個(gè)用戶的權(quán)限則取的是這多個(gè)角色權(quán)限的并集。

“角色管理”的頁(yè)面加上“權(quán)限”后如下:

(原型:角色管理)

(原型:配置數(shù)據(jù)權(quán)限)

(原型:配置功能權(quán)限)

另外,頁(yè)面上的功能權(quán)限展示,建議與系統(tǒng)模塊、菜單頁(yè)面的順序來(lái)排列好,便于用戶理解。

到此,權(quán)限系統(tǒng)差不多就設(shè)計(jì)完了,后續(xù)系統(tǒng)在不斷的更新迭代時(shí),權(quán)限系統(tǒng)也需要做對(duì)應(yīng)的調(diào)整。大到功能模塊的增、刪,小到功能命名的變更,權(quán)限系統(tǒng)都需要做到同步變更,以求一一對(duì)應(yīng)。

四、總結(jié)

權(quán)限管理對(duì)于B端產(chǎn)品來(lái)說(shuō)必不可少,權(quán)限管理具體應(yīng)該做到什么程度,跟企業(yè)運(yùn)營(yíng)息息相關(guān)。在設(shè)計(jì)權(quán)限系統(tǒng)時(shí),一定要結(jié)合企業(yè)發(fā)展,提前做好規(guī)劃,才能滿足業(yè)務(wù)需求。

 

作者:WOWdesign,研究設(shè)計(jì)價(jià)值最大化,涉及用戶體驗(yàn)、品牌體驗(yàn)、空間體驗(yàn)。

本文由 @WOWdesign 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來(lái)自Pexels,基于 CC0 協(xié)議

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 請(qǐng)問(wèn)數(shù)據(jù)權(quán)限要怎么具體設(shè)計(jì)呢?可以展開(kāi)講講嗎

    來(lái)自江蘇 回復(fù)
  2. 有遇到同一個(gè)用戶對(duì)不同的數(shù)據(jù)范圍有不同的功能權(quán)限的嗎?好像說(shuō)是完全數(shù)據(jù)驅(qū)動(dòng)

    來(lái)自河南 回復(fù)
    1. 通過(guò)角色管理功能權(quán)限,通過(guò)組織架構(gòu)管理數(shù)據(jù)權(quán)限;數(shù)據(jù)權(quán)限管理的常用方式:1、 數(shù)據(jù)權(quán)限可以通過(guò)組織架構(gòu)的上下級(jí)來(lái)繼承; 2、除了繼承,支持自定義:按 全部數(shù)據(jù)、本部門及下級(jí)部門數(shù)據(jù)、本部門數(shù)據(jù)、本人數(shù)據(jù)等; 3、在自定義數(shù)據(jù)權(quán)限基礎(chǔ)上更進(jìn)階的設(shè)計(jì),是數(shù)據(jù)權(quán)限的多維度配置,比如一個(gè)銷售訂單,有銷售員、銷售部門、銷售區(qū)域等部門維度,也有產(chǎn)品1、產(chǎn)品2等類型維度,多維度數(shù)據(jù)可以交叉,然后去交集就是最終的數(shù)據(jù)權(quán)限。

      來(lái)自北京 回復(fù)
  3. 文章權(quán)限設(shè)計(jì)-頁(yè)面上線功能權(quán)限展示,這種比較適用于單個(gè)系統(tǒng)的權(quán)限管理配置。但權(quán)限管理系統(tǒng)基本可以抽象通用化,一般公司都維護(hù)一套權(quán)限管理系統(tǒng),定義好與各個(gè)業(yè)務(wù)系統(tǒng)接口調(diào)用即可。如果多個(gè)系統(tǒng)共用,功能權(quán)限展示可以定義成樹(shù)狀結(jié)構(gòu),每個(gè)系統(tǒng)獨(dú)自定義菜單、子菜單和功能即可,通用性會(huì)更強(qiáng)~

    來(lái)自北京 回復(fù)
    1. 這種需要公司各個(gè)系統(tǒng)用戶群一致吧?如果不同系統(tǒng)服務(wù)不同客戶就不行了。

      來(lái)自上海 回復(fù)
  4. 請(qǐng)問(wèn)一下,對(duì)于列表數(shù)據(jù)的增刪改查是屬于數(shù)據(jù)權(quán)限還是功能權(quán)限呢???

    回復(fù)
    1. 功能權(quán)限

      來(lái)自浙江 回復(fù)
  5. 用戶可以跟部門掛鉤

    來(lái)自福建 回復(fù)
  6. 但是關(guān)于數(shù)據(jù)權(quán)限我有一個(gè)問(wèn)題,配置數(shù)據(jù)權(quán)限時(shí)是選擇角色,但是角色是活的可以隨意配置的,這些角色各自能看到哪些數(shù)據(jù)該如何規(guī)定呢?

    來(lái)自北京 回復(fù)
    1. 給角色配權(quán)限就能滿足,比如財(cái)務(wù)這個(gè)角色只給他開(kāi)放財(cái)務(wù)相關(guān)的權(quán)限

      來(lái)自廣東 回復(fù)
    2. 那如何定義哪些數(shù)據(jù)屬于財(cái)務(wù)方面的數(shù)據(jù)呢,是系統(tǒng)設(shè)計(jì)的時(shí)候定義好的嗎還是系統(tǒng)可以配置的?

      來(lái)自江蘇 回復(fù)
    3. 作者的意思大概是:給當(dāng)前角色配置數(shù)據(jù)權(quán)限,如當(dāng)前角色下還有若干個(gè)子角色,選擇自定義配置時(shí)選擇可以擁有哪幾個(gè)子角色的數(shù)據(jù)權(quán)限!我是這樣理解的,不知道對(duì)不對(duì)??

      回復(fù)
  7. 太棒了!條理清晰,還有原型展示,多謝作者分享!

    來(lái)自北京 回復(fù)
  8. 角色有上級(jí) 這個(gè)有點(diǎn)問(wèn)題。個(gè)人感覺(jué)是把角色與崗位等同了,不太妥當(dāng)

    回復(fù)
    1. 很多企業(yè)管理軟件都有這個(gè)設(shè)計(jì),可能是方便使用

      來(lái)自江蘇 回復(fù)
    2. 角色把崗位等同,會(huì)導(dǎo)致角色數(shù)量變多,比如銷售部門:一組銷售組長(zhǎng)、二組銷售組長(zhǎng); 用作者的方法,需要設(shè)置兩個(gè)角色。實(shí)際上兩個(gè)組長(zhǎng)的功能權(quán)限是相同的,都叫“銷售組長(zhǎng)”,不同的是數(shù)據(jù)權(quán)限,一組可以看一組負(fù)責(zé)的客戶數(shù)據(jù),二組組長(zhǎng)可以看到二組負(fù)責(zé)的客戶數(shù)據(jù)。
      對(duì)于數(shù)據(jù)權(quán)限,應(yīng)該是掛到用戶上;通過(guò)用戶的部門、上級(jí)來(lái)維護(hù)一套組織架構(gòu),實(shí)現(xiàn)數(shù)據(jù)權(quán)限的繼承。實(shí)現(xiàn)自定義數(shù)據(jù)權(quán)限,就是直接把某個(gè)用戶的數(shù)據(jù)給到 另外一個(gè)用戶

      來(lái)自北京 回復(fù)
  9. 對(duì)權(quán)限管理系統(tǒng)的發(fā)展和設(shè)計(jì)策略分析得很清晰,喜歡這種有思維導(dǎo)圖的文章。

    來(lái)自廣東 回復(fù)
  10. 角色管理為什么要有上級(jí)角色

    來(lái)自江蘇 回復(fù)
  11. 什么時(shí)候權(quán)限管理的設(shè)計(jì)能夠真正做到維護(hù)用戶隱私呢,感覺(jué)互聯(lián)網(wǎng)時(shí)代個(gè)人隱私越來(lái)越難得到保障了。

    來(lái)自湖北 回復(fù)