如何對權(quán)限管理平臺(tái)進(jìn)行產(chǎn)品設(shè)計(jì)?

9 評論 11218 瀏覽 66 收藏 11 分鐘

本篇以筆者做過的一個(gè)權(quán)限管理平臺(tái)為例,講解下權(quán)限管理的設(shè)計(jì)思路。

項(xiàng)目背景

本次是為培訓(xùn)機(jī)構(gòu)搭建一套信息化系統(tǒng),包括一個(gè)權(quán)限管理平臺(tái)、以及5個(gè)業(yè)務(wù)系統(tǒng)。這里就不對業(yè)務(wù)系統(tǒng)做一一的描述了。

其中權(quán)限管理平臺(tái)由總部運(yùn)營人員進(jìn)行管理與維護(hù)。此平臺(tái)的主要目標(biāo)是:各個(gè)業(yè)務(wù)系統(tǒng)的所有功能和數(shù)據(jù)進(jìn)行統(tǒng)一權(quán)限配置。

機(jī)構(gòu)與業(yè)務(wù)梳理

對客戶實(shí)際組織架構(gòu)和業(yè)務(wù)情況進(jìn)行了解梳理,總結(jié)如下:

  • 其中運(yùn)營部與教研部歸總部管理,運(yùn)營部管理公司所有員工的賬戶與權(quán)限分配。其下又分為4個(gè)大機(jī)構(gòu)。
  • 4大機(jī)構(gòu)其下又分為多個(gè)小機(jī)構(gòu),每個(gè)機(jī)構(gòu)又是獨(dú)立存在的。
  • 每個(gè)小機(jī)構(gòu)又有多個(gè)業(yè)務(wù)部門,每個(gè)部門負(fù)責(zé)管理與維護(hù)不同的業(yè)務(wù)系統(tǒng)。
  • 同一個(gè)員工可能在不同的機(jī)構(gòu)擔(dān)任不同的角色。

名詞解析

該平臺(tái)的權(quán)限設(shè)計(jì)是基于RBAC模式進(jìn)行設(shè)計(jì)的。

RBAC(Role-Based Access Control)基于角色的訪問控制。這是從傳統(tǒng)的權(quán)限模型基礎(chǔ)上,改進(jìn)而來并且相當(dāng)成熟的權(quán)限模型。這里強(qiáng)調(diào)三個(gè)要素:用戶、角色、權(quán)限。用戶與角色是多對多關(guān)系,角色與權(quán)限是多對多關(guān)系。

關(guān)鍵元素:

  • 用戶(員工):成功認(rèn)證并登錄系統(tǒng)的操作員(主體:who);
  • 權(quán)限:訪問資源的許可(how);
  • 角色:權(quán)限的集合體;
  • 業(yè)務(wù)系統(tǒng):每個(gè)獨(dú)立業(yè)務(wù)系統(tǒng),包括各業(yè)務(wù)系統(tǒng)中的菜單、操作按鈕等(what)

如圖所示:

大體思路

  • 組織機(jī)構(gòu)與員工關(guān)聯(lián);
  • 業(yè)務(wù)平臺(tái)與資源權(quán)限關(guān)聯(lián);
  • 角色與業(yè)務(wù)平臺(tái)關(guān)聯(lián),維護(hù)該角色對應(yīng)的資源列表;
  • 角色權(quán)限與系統(tǒng)角色關(guān)聯(lián);

產(chǎn)品具體設(shè)計(jì)說明

統(tǒng)一權(quán)限管理平臺(tái)主要包含了以下5個(gè)功能模塊:員工管理、角色管理、校區(qū)管理、安全設(shè)置、操作日志。其中員工管理、角色管理、機(jī)構(gòu)管理三個(gè)模塊相互聯(lián)系。如圖所示。

1. 機(jī)構(gòu)管理

機(jī)構(gòu)管理是對整個(gè)集團(tuán)公司的員工所屬機(jī)構(gòu)進(jìn)行維護(hù)、更新的管理。機(jī)構(gòu)的最高層次:如“XX總部”不可刪除、可以編輯,該機(jī)構(gòu)由超級(jí)管理員進(jìn)行維護(hù)。根據(jù)業(yè)務(wù)梳理,其中4個(gè)大機(jī)構(gòu)不具備實(shí)際意義,只是方便與各個(gè)機(jī)構(gòu)的選擇。因此4個(gè)大機(jī)構(gòu)直接由開發(fā)設(shè)置。

具體設(shè)計(jì)如下:

機(jī)構(gòu)列表包括:機(jī)構(gòu)名稱、上級(jí)機(jī)構(gòu)、機(jī)構(gòu)位置、GPS定位、是否啟用、操作(編輯)

創(chuàng)建機(jī)構(gòu):彈窗錄入:機(jī)構(gòu)名稱、選擇上級(jí)機(jī)構(gòu)、機(jī)構(gòu)位置、GPS定位(方便員工進(jìn)行考勤)、是否啟用。

2. 角色管理

角色往往基于業(yè)務(wù)需求而在系統(tǒng)內(nèi)設(shè)定好的標(biāo)簽,每個(gè)角色對應(yīng)明確的業(yè)務(wù)系統(tǒng)權(quán)限,是眾由多最小權(quán)限顆粒的組成。通過把權(quán)限給這個(gè)角色,再把角色給賬號(hào),從而實(shí)現(xiàn)賬號(hào)的權(quán)限,因此它承擔(dān)了一個(gè)橋梁的作用。

根據(jù)對業(yè)務(wù)的梳理,不同角色只能操作其對應(yīng)的業(yè)務(wù)平臺(tái),由開發(fā)將業(yè)務(wù)平臺(tái)直接寫死,新增角色時(shí),將角色與平臺(tái)進(jìn)行掛鉤,方便對角色進(jìn)行該業(yè)務(wù)平臺(tái)進(jìn)行權(quán)限分配

具體設(shè)計(jì)如下:

新建角色:角色名稱,所屬平臺(tái);

角色列表包括:角色名稱、所屬平臺(tái)、創(chuàng)建人、創(chuàng)建時(shí)間、操作(編輯、刪除、權(quán)限分配)

角色的權(quán)限分配:對應(yīng)跳轉(zhuǎn)到對應(yīng)平臺(tái)權(quán)限分配界面,即該業(yè)務(wù)平臺(tái)的資源(菜單/子菜單/按鈕/字段),目前已存在5個(gè)業(yè)務(wù)平臺(tái),不同業(yè)務(wù)具備不同的資源;下圖只是其中一個(gè)業(yè)務(wù)平臺(tái)的部分權(quán)限。

刪除:彈窗提示:“刪除該角色后,員工所屬角色會(huì)自動(dòng)移除,是否繼續(xù)?”。

3. 員工管理

員工歸屬不同的機(jī)構(gòu),是各個(gè)業(yè)務(wù)系統(tǒng)的具體操作者。員工按組織架構(gòu)新建/導(dǎo)入在對應(yīng)的組織上,一般是在機(jī)構(gòu)對應(yīng)的部門(一級(jí)部門–二級(jí)部門)下。根據(jù)公司實(shí)際情況直接將員工歸屬于各個(gè)不同的機(jī)構(gòu)。

員工可以在多個(gè)不同機(jī)構(gòu)擔(dān)任不同的角色、所以它與機(jī)構(gòu)、角色之間的關(guān)系都是1對n的關(guān)系。員工的權(quán)限取決于他在不同的機(jī)構(gòu)擔(dān)任角色的集合,即員工權(quán)限=同一機(jī)構(gòu)所屬角色權(quán)限集合(注:員工根據(jù)角色所屬平臺(tái)、操作不同的業(yè)務(wù)系統(tǒng))。

具體設(shè)計(jì)如下:

員工列表、查詢:用戶列表頁展示姓名(員工實(shí)際姓名)、手機(jī)(員工唯一登錄賬號(hào))、狀態(tài)等有價(jià)值的信息。同時(shí)具備編輯、啟用、授權(quán)、重置密碼、離職功能。

員工新增、編輯、批量導(dǎo)入:本項(xiàng)目中,員工的新增均是通過統(tǒng)一權(quán)限管理平臺(tái)進(jìn)行,并并分配各業(yè)務(wù)系統(tǒng)角色權(quán)限。其中手機(jī)號(hào)碼是員工唯一登錄業(yè)務(wù)系統(tǒng)的憑證。

離職:當(dāng)出現(xiàn)用戶離職時(shí),可以將用戶禁用,不可登錄系統(tǒng),防止業(yè)務(wù)數(shù)據(jù)流失。

重置密碼:當(dāng)用戶多少輸入密碼錯(cuò)誤時(shí)或忘記密角色碼時(shí),這時(shí)可以進(jìn)行重置密碼,恢復(fù)到默認(rèn)密碼。

授權(quán):點(diǎn)擊授權(quán),由于同一個(gè)員工在不同機(jī)構(gòu)中擁有的角色是不一致的。所以需要對員工的不同機(jī)構(gòu)進(jìn)行單獨(dú)角色配置,呈一一對應(yīng)的關(guān)系。利潤員工A在機(jī)構(gòu)A擁有角色A、角色C,在機(jī)構(gòu)B擁有其他角色等

4. 安全設(shè)置

此平臺(tái)默認(rèn)一個(gè)超級(jí)管理員角色,這個(gè)賬號(hào)不可刪除,但可以進(jìn)行密碼于密保手機(jī)修改(由開發(fā)人員創(chuàng)建)

該超級(jí)管理員角色主要對該平臺(tái)創(chuàng)建角色、與機(jī)構(gòu)并進(jìn)行權(quán)限分配

5. 操作日志

操作日志是對用戶操作的記錄,記錄有操作IP、操作內(nèi)容和操作時(shí)間等。

數(shù)據(jù)權(quán)限梳理

對各角色的數(shù)據(jù)權(quán)限進(jìn)行梳理,一些員工若存在所分配的角色權(quán)限之外,還需要一些權(quán)限需時(shí)。

可以與開發(fā)溝通,通過代碼寫死或者約定一定的規(guī)則,用角色編碼或崗位編碼實(shí)現(xiàn);

通過在角色管理設(shè)置特殊角色,進(jìn)行單獨(dú)角色權(quán)限分配,但不在角色管理中顯示;

平臺(tái)上線試運(yùn)行

平臺(tái)上線試運(yùn)行期間,協(xié)助客戶對實(shí)際業(yè)務(wù)的新情況調(diào)整權(quán)限配置,讓客戶運(yùn)營人員逐漸熟悉權(quán)限配置規(guī)則。

在使用過程中,對客戶提出一些新的特殊權(quán)限的需求進(jìn)行評估,根據(jù)對現(xiàn)有權(quán)限框架的影響再?zèng)Q定是否變更。

以上就是一只產(chǎn)品汪對“權(quán)限管理平臺(tái)”的設(shè)計(jì)思路和對應(yīng)的實(shí)現(xiàn)方法,歡迎和同行一起交流產(chǎn)品設(shè)計(jì)。

 

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

題圖來自Unsplash, 基于CC0協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評論
評論請登錄
  1. 寫得很好。特別是這段,秒懂本質(zhì)。、
    “組織機(jī)構(gòu)與員工關(guān)聯(lián);
    業(yè)務(wù)平臺(tái)與資源權(quán)限關(guān)聯(lián);
    角色與業(yè)務(wù)平臺(tái)關(guān)聯(lián),維護(hù)該角色對應(yīng)的資源列表;
    角色權(quán)限與系統(tǒng)角色關(guān)聯(lián);”

    來自福建 回復(fù)
  2. 請問,添加機(jī)構(gòu)的時(shí)候?yàn)槭裁葱枰獧C(jī)構(gòu)的GPS跟機(jī)構(gòu)的位置,意義在哪里

    來自北京 回復(fù)
    1. 用于學(xué)員和講師進(jìn)行打卡考勤

      來自廣東 回復(fù)
  3. 發(fā)現(xiàn)兩處有歧義的地方:
    1、統(tǒng)一權(quán)限管理平臺(tái)主要包含了以下4個(gè)功能模塊:員工管理、角色管理、校區(qū)管理、安全設(shè)置、操作日志?!粗竺媸?個(gè)功能模塊,是不是我沒理解哪個(gè)不算功能模塊。
    2、機(jī)構(gòu)模塊出現(xiàn)了CPS定位這個(gè)詞匯,但是下文中又出現(xiàn)GPS定位,通過百度指導(dǎo)CPS是信息物理系統(tǒng)(CPS,Cyber-Physical Systems)的簡稱,不知道是否是這個(gè)意思。

    來自陜西 回復(fù)
    1. 謝謝,有兩個(gè)地方描述錯(cuò)誤。

      來自廣東 回復(fù)
  4. 權(quán)限是設(shè)計(jì)完再考慮,還是設(shè)計(jì)的一開始就要考慮

    來自內(nèi)蒙古 回復(fù)
    1. 在設(shè)計(jì)之前,就需要梳理

      來自廣東 回復(fù)
  5. 機(jī)構(gòu)是什么意思,沒理解員工分機(jī)構(gòu)的意思?角色跟平臺(tái)關(guān)聯(lián)能理解,機(jī)構(gòu)和平臺(tái)是什么關(guān)系?

    來自湖北 回復(fù)
    1. 相當(dāng)不同的分公司,同一個(gè)員工可能在不同的分公司擔(dān)當(dāng)不同的角色

      來自廣東 回復(fù)