后臺(tái)設(shè)計(jì)之權(quán)限管理

29 評(píng)論 54913 瀏覽 446 收藏 8 分鐘

權(quán)限系統(tǒng)是每位后臺(tái)產(chǎn)品產(chǎn)品經(jīng)理繞不過(guò)去的問(wèn)題,好的權(quán)限系統(tǒng)可以明確公司內(nèi)不同人員、不同部門的分工,降低操作風(fēng)險(xiǎn)發(fā)生概率,便于管理等優(yōu)勢(shì)。筆者曾負(fù)責(zé)過(guò)若干種后臺(tái)系統(tǒng)的搭建,其中都繞不開(kāi)“權(quán)限管理”,現(xiàn)愿意將我個(gè)人經(jīng)驗(yàn)和工作中所產(chǎn)生的的思考與大家進(jìn)行分享。

1. 權(quán)限系統(tǒng)是什么

一句話概括,我個(gè)人認(rèn)為權(quán)限系統(tǒng)就是:明確操作人員可在平臺(tái)內(nèi)能做什么。即什么樣的人,可以做什么樣的事,這并不難理解,我們的用戶是所有可以登錄該平臺(tái)的人員。

2. 權(quán)限系統(tǒng)應(yīng)該怎么做

在這筆者先介紹一下“RBAC”結(jié)構(gòu)的含義,所謂RBAC即:權(quán)限與角色相關(guān)聯(lián),用戶通過(guò)成為適當(dāng)角色的成員而得到這些角色的權(quán)限。

由此可見(jiàn),通常的權(quán)限管理,可分為三個(gè)部分及“用戶管理”、“角色管理”和“權(quán)限管理”三個(gè)部分。

通常來(lái)說(shuō),用戶與角色一一對(duì)應(yīng),一個(gè)用戶對(duì)應(yīng)一個(gè)角色;同一個(gè)角色可對(duì)應(yīng)多個(gè)后臺(tái)操作頁(yè)面;若公司具有多個(gè)產(chǎn)品線,那么多個(gè)角色對(duì)應(yīng)同一個(gè)產(chǎn)品。其結(jié)構(gòu)如下圖所示:

有些讀者可能會(huì)有疑問(wèn),如果去掉“角色”概念,直接將用戶與權(quán)限進(jìn)行綁定是否可以減輕工作步驟?

表面上看來(lái),如果沒(méi)有“角色”,也可以為用戶分配權(quán)限,但仔細(xì)思考后,會(huì)發(fā)現(xiàn)如下問(wèn)題:

  1. 若不同用戶擁有相同權(quán)限,那么后臺(tái)操作人員將重復(fù)配置多次。
  2. 若用戶身份變更,需重新梳理權(quán)限。
  3. 若用戶離職,將出現(xiàn)多個(gè)無(wú)用權(quán)限,造成垃圾數(shù)據(jù)。

綜上所述,RBAC結(jié)構(gòu)可通過(guò)“角色”搭建用戶與權(quán)限之間的關(guān)系,可在創(chuàng)建角色時(shí)綁定相應(yīng)權(quán)限,再匹配到用戶,可提高整體的效率以及穩(wěn)定性。

3. 權(quán)限系統(tǒng)三要素

前文已經(jīng)講過(guò),權(quán)限系統(tǒng)的核心三個(gè)功能為:用戶、角色和權(quán)限,下圖為簡(jiǎn)要的腦圖,可輔助理解。

3.1 用戶管理

通常企業(yè)的后臺(tái)管理系統(tǒng),可以同企業(yè)內(nèi)部OA或企業(yè)微信等系統(tǒng)間打通,當(dāng)用新員工入職時(shí),可主動(dòng)申請(qǐng)后臺(tái)相應(yīng)權(quán)限,高級(jí)管理員(即權(quán)限分配者)根據(jù)用戶的職責(zé),分配具體的角色。若后臺(tái)系統(tǒng)暫未與系統(tǒng)打通,則需管理員手動(dòng)創(chuàng)建用戶。

用戶界面原型圖如上所示,該原型內(nèi)為尚未連接企業(yè)OA,需手動(dòng)創(chuàng)建用戶,所有可登錄后臺(tái)的用戶都將在表中展示。

添加用戶的界面如下圖所示:

在創(chuàng)建用戶時(shí),需輸入用戶的基本信息,并直接為用戶綁定角色,那么如何設(shè)定角色呢?這是我們下一步需要說(shuō)明的問(wèn)題。

細(xì)心的同學(xué)不難發(fā)現(xiàn),上圖頁(yè)面中存在“修改權(quán)限”的按鈕,該功能的存在是為了避免角色與權(quán)限的綁定過(guò)于僵化,可針對(duì)同一角色在不同用戶使用時(shí),進(jìn)行微調(diào),避免每次都產(chǎn)生新的角色。

3.2 角色管理

角色可由兩個(gè)維度確認(rèn):

  1. 業(yè)務(wù)維度
  2. 等級(jí)維度

所謂業(yè)務(wù)相對(duì)來(lái)說(shuō)方便理解,即不同的角色負(fù)責(zé)不同的功能,例如:配置專員,負(fù)責(zé)內(nèi)容物料的配置以及上架;審核專員,負(fù)責(zé)上架前的審核工作。

等級(jí)維度,即超級(jí)管理員、普通管理員和XX專員,超級(jí)管理員擁有針對(duì)所有用戶添加角色、添加用戶的權(quán)限,普通專員只能圍繞自身業(yè)務(wù)進(jìn)行管理,而專員的權(quán)限最弱,只負(fù)責(zé)基礎(chǔ)的執(zhí)行工作。

業(yè)務(wù)維度視平臺(tái)的功能和業(yè)務(wù)定義,等級(jí)維度可按照系統(tǒng)復(fù)雜度以及人員架構(gòu)方向確定。

角色列表同用戶列表一樣,將展示平臺(tái)內(nèi)所有的角色,以及該角色對(duì)應(yīng)的說(shuō)明、人數(shù)以及狀態(tài)(開(kāi)啟/關(guān)閉)。

創(chuàng)建角色的過(guò)程中,可為該角色配置相應(yīng)的權(quán)限。可采用雙向樹(shù)結(jié)構(gòu)或列表勾選的方式快速添加。

3.3 權(quán)限說(shuō)明

權(quán)限系統(tǒng),離不開(kāi)具體的權(quán)限,之所以放到最后,是因?yàn)闄?quán)限相比較前面兩個(gè)元素來(lái)說(shuō)更為復(fù)雜。通常后臺(tái)的權(quán)限分為:頁(yè)面權(quán)限、操作權(quán)限和數(shù)據(jù)權(quán)限。

  • 頁(yè)面權(quán)限:用戶是否具備進(jìn)入/瀏覽該頁(yè)面的權(quán)限,例如,負(fù)責(zé)物料上傳的運(yùn)營(yíng)人員,應(yīng)有物料上架的頁(yè)面權(quán)限,但無(wú)需數(shù)據(jù)埋點(diǎn)反饋的頁(yè)面權(quán)限。
  • 操作權(quán)限:在擁有頁(yè)面權(quán)限后,是否可擁有對(duì)該頁(yè)面進(jìn)行操作的權(quán)限。例如,數(shù)據(jù)專員可以對(duì)數(shù)據(jù)統(tǒng)計(jì)后臺(tái)的報(bào)表進(jìn)行整合、下載等,但無(wú)法更改數(shù)據(jù)統(tǒng)計(jì)規(guī)則。
  • 數(shù)據(jù)權(quán)限:數(shù)據(jù)權(quán)限較比于其他兩個(gè)權(quán)限較為抽象。指的是用戶是否有針對(duì)某些數(shù)據(jù)的瀏覽權(quán)限。例如,同一個(gè)管理后臺(tái)內(nèi),可看到公司不同產(chǎn)品產(chǎn)品線的下載率、DAU、Crash率等等,但是作為某條產(chǎn)品線的員工,只能看到該產(chǎn)品線的數(shù)據(jù),而無(wú)法對(duì)其他產(chǎn)品線的數(shù)據(jù)進(jìn)行觀測(cè)。

通常頁(yè)面權(quán)限和操作權(quán)限將會(huì)在權(quán)限列表中拉取系統(tǒng)內(nèi)的所有頁(yè)面和可進(jìn)行的操作,通過(guò)樹(shù)狀圖展示給操作人員,進(jìn)行配置,而數(shù)據(jù)權(quán)限則需要貼合公司的業(yè)務(wù)進(jìn)行分析。

4. 總結(jié)

以上就是筆者對(duì)于權(quán)限系統(tǒng)設(shè)計(jì)的思考與總結(jié),后臺(tái)系統(tǒng)的設(shè)計(jì),沒(méi)有絕對(duì)的好與壞,也沒(méi)有DAU、MAU的壓力,但是也有自己的獨(dú)特之處即一定要圍繞業(yè)務(wù)來(lái)做,以滿足業(yè)務(wù)為核心,提高效率為目標(biāo)。

如有機(jī)會(huì),后續(xù)將會(huì)介紹CRM系統(tǒng)以及內(nèi)容管理CMS系統(tǒng)。

 

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

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

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 想問(wèn)一下admin賬號(hào)是怎么來(lái)的,是后端設(shè)置的嗎?

    來(lái)自四川 回復(fù)
  2. 數(shù)據(jù)權(quán)限可以和用戶直接綁定,功能權(quán)限和角色綁定

    回復(fù)
  3. 你好,如果為一個(gè)用戶添加多個(gè)角色,在用戶登錄時(shí)該如何處理呢?合并權(quán)限或是角色切換,或者是別的方案?

    來(lái)自浙江 回復(fù)
    1. 合并權(quán)限,取權(quán)限的并集

      來(lái)自中國(guó) 回復(fù)
  4. 學(xué)到了,寫的很好理解。表達(dá)棒棒噠

    回復(fù)
  5. 你好,我是做B端ERP系統(tǒng)的,請(qǐng)問(wèn)一下,數(shù)據(jù)權(quán)限隔離,這個(gè)數(shù)據(jù)權(quán)限隔離怎么和用戶關(guān)聯(lián)起來(lái),按照我的理解,同一個(gè)頁(yè)面,某些數(shù)據(jù)你可以看,我看不到,那這些數(shù)據(jù)前提應(yīng)該是和用戶建立綁定關(guān)系,這是我自己的理解,不知道對(duì)不對(duì)

    回復(fù)
    1. ERP系統(tǒng)應(yīng)該是根據(jù)業(yè)務(wù)建立崗位和標(biāo)準(zhǔn)角色,根據(jù)崗位來(lái)做數(shù)據(jù)權(quán)限的授權(quán)吧

      來(lái)自四川 回復(fù)
  6. 角色管理

    回復(fù)
  7. 數(shù)據(jù)權(quán)限如何設(shè)計(jì)?

    回復(fù)
    1. 同問(wèn)。

      來(lái)自四川 回復(fù)
  8. 數(shù)據(jù)權(quán)限和頁(yè)面權(quán)限感覺(jué)很像

    回復(fù)
    1. 還是有不一樣的吧,我的理解是頁(yè)面權(quán)限屬于分配頁(yè)面(欄目),有些欄目只有一定等級(jí)的人員可以查看,比如管理人員可以查看統(tǒng)計(jì)報(bào)表而普通員工無(wú)法查看;而數(shù)據(jù)權(quán)限屬于對(duì)頁(yè)面內(nèi)的數(shù)據(jù)的權(quán)限,同一個(gè)頁(yè)面中可能有多類數(shù)據(jù),比如業(yè)務(wù)人員只能查看自己的業(yè)務(wù)情況,但是管理人員可以查看所有人的業(yè)務(wù)情況,這個(gè)屬于同一個(gè)頁(yè)面的不同數(shù)據(jù)權(quán)限劃分了。淺薄之見(jiàn)哈

      來(lái)自湖南 回復(fù)
    2. 謝謝

      來(lái)自廣東 回復(fù)
  9. 數(shù)據(jù)權(quán)限該如何配置?

    來(lái)自福建 回復(fù)
  10. 也很感謝你的這篇文章,第3遍閱讀了,對(duì)優(yōu)化公司產(chǎn)品起了很大的作用!

    來(lái)自北京 回復(fù)
    1. ??

      來(lái)自浙江 回復(fù)
    2. 哈哈,承蒙感謝,十分榮幸。大家一起學(xué)習(xí)哈

      來(lái)自北京 回復(fù)
  11. 也會(huì)有不同用戶處于同一角色,但數(shù)據(jù)權(quán)限不同的情況

    來(lái)自北京 回復(fù)
    1. 不同用戶同一角色 但組織結(jié)構(gòu)不同 權(quán)限也就會(huì)不同

      來(lái)自北京 回復(fù)
  12. “通常來(lái)說(shuō),用戶與角色一一對(duì)應(yīng),一個(gè)用戶對(duì)應(yīng)一個(gè)角色”

    ——用戶與角色大部分情況下不是一 一對(duì)應(yīng)的;一個(gè)用戶可能會(huì)有多個(gè)角色,一個(gè)角色也可能會(huì)有多個(gè)用戶

    來(lái)自北京 回復(fù)
    1. 實(shí)際上,確實(shí)是一用戶包含多角色,優(yōu)化之前公司的產(chǎn)品(2B產(chǎn)品),看到用戶與角色綁定,角色與權(quán)限綁定的設(shè)計(jì),無(wú)非都是為了圖快滿足客戶的一時(shí)需求,而后又不做更新迭代優(yōu)化,處理起來(lái)改動(dòng)很大。

      來(lái)自北京 回復(fù)
    2. 謝謝您的建議,學(xué)習(xí)啦

      來(lái)自北京 回復(fù)
    3. 角色可以不斷的建,一個(gè)用戶多個(gè)角色,我理解其實(shí)可以建立一個(gè)角色,把多個(gè)角色的權(quán)限加進(jìn)到這一個(gè)角色,再給這個(gè)用戶,綁定這個(gè)角色,這樣不知行不行

      來(lái)自浙江 回復(fù)
  13. 第一篇么,鼓勵(lì)一下加油。我也是做B端產(chǎn)品的,有興趣的話,可以一起努力,目前我發(fā)布了十篇文章。微信:znc0520 ??

    來(lái)自河南 回復(fù)
    1. 沒(méi)想到能在這遇到你,之前閱讀過(guò)你的文章“三年產(chǎn)品經(jīng)理的轉(zhuǎn)正述職報(bào)告”,我也在做智慧校園業(yè)務(wù) ??

      來(lái)自北京 回復(fù)
    2. 哈哈哈,我無(wú)處不在??梢约觽€(gè)朋友一起學(xué)習(xí)進(jìn)步。 ??

      來(lái)自河南 回復(fù)
  14. 用戶、角色、權(quán)限三者分開(kāi),以角色作為橋梁將用戶和權(quán)限關(guān)聯(lián)起來(lái),這樣的配置賊方便
    再給權(quán)限分個(gè)組:預(yù)先將權(quán)限分好,并設(shè)置一批角色,比較方便
    再加一個(gè)權(quán)限轉(zhuǎn)移的功能,解決人員變動(dòng)帶來(lái)的權(quán)限調(diào)整

    來(lái)自浙江 回復(fù)
    1. 謝謝您的建議

      來(lái)自北京 回復(fù)
    2. ?? 別這么客氣,一起學(xué)習(xí),一起成長(zhǎng)

      來(lái)自浙江 回復(fù)