ToB產(chǎn)品設(shè)計:用戶權(quán)限系統(tǒng)解析
文章以產(chǎn)品經(jīng)理的角度思考,對權(quán)限系統(tǒng)的核心進(jìn)行剖析,抽象出權(quán)限系統(tǒng)中的核心要素,并結(jié)合釘釘?shù)囊恍┳龇▽?quán)限系統(tǒng)進(jìn)行介紹。
一、什么是用戶權(quán)限系統(tǒng)
權(quán)限管理系統(tǒng)是任何一個企業(yè)管理系統(tǒng)內(nèi)都必備也是非常重要的模塊,對權(quán)限系統(tǒng)的分析和規(guī)劃也是一個B端產(chǎn)品經(jīng)理必備的能力。
現(xiàn)有的權(quán)限系統(tǒng)通?;赗BAC(Role-Based Access Control)的思想設(shè)計,角色和權(quán)限綁定、角色和用戶之間的松耦合、多對多的關(guān)系來實(shí)現(xiàn)授權(quán)和授權(quán)的快速變更,從而控制用戶對系統(tǒng)的功能使用和數(shù)據(jù)訪問權(quán)限,以達(dá)到企業(yè)或機(jī)構(gòu)安全管控的目的。
和用戶權(quán)限系統(tǒng)密切相關(guān)的還有兩個模塊:賬號體系和組織架構(gòu)。
賬號體系,會負(fù)責(zé)用戶賬號注冊、登錄驗(yàn)證、密碼找回等功能,其中登錄驗(yàn)證(即準(zhǔn)入權(quán)限)和權(quán)限系統(tǒng)有著密切的關(guān)系。
組織架構(gòu),即公司的行政組織架構(gòu)。對于大型企業(yè),可能會有總公司、大區(qū)、分公司、辦事處、部門等各個不同級別的機(jī)構(gòu),機(jī)構(gòu)之間可能縱橫交錯,彼此有業(yè)務(wù)往來,較為復(fù)雜;對于小微企業(yè)或流程相對簡單的業(yè)務(wù),通常只有公司,部門兩個級別,較為簡單。面對復(fù)雜的大型企業(yè)組織架構(gòu),權(quán)限系統(tǒng)的設(shè)計和實(shí)現(xiàn)復(fù)雜性會成倍的增加。
阿里釘釘是很多人都在使用,并且也是復(fù)雜型的后臺管理系統(tǒng),本文會結(jié)合釘釘?shù)囊恍┳龇▽?quán)限系統(tǒng)進(jìn)行介紹。
二、規(guī)劃一個權(quán)限系統(tǒng)的核心
2.1 核心問題
權(quán)限系統(tǒng)要實(shí)現(xiàn)的核心目標(biāo)是對企業(yè)業(yè)務(wù)的安全管控,企業(yè)業(yè)務(wù)對安全性要求的級別,實(shí)現(xiàn)安全管控的粒度,是產(chǎn)品經(jīng)理需要解決的核心問題,依賴產(chǎn)品經(jīng)理擁有一定的行業(yè)經(jīng)驗(yàn)和對用戶實(shí)際業(yè)務(wù)流程、操作有較深的認(rèn)識。我們使用產(chǎn)品經(jīng)理通用的思考模型“角色→場景→任務(wù)”來梳理這一問題。
2.2 角色
B端產(chǎn)品的用戶畫像和C端產(chǎn)品不同。
C端產(chǎn)品的用戶畫像有梁寧提出的小閑、小明、小笨這種具備明顯性格特征、行為特征的用戶畫像。
而B端產(chǎn)品是強(qiáng)業(yè)務(wù)、崗位職責(zé)驅(qū)動,企業(yè)組織架構(gòu)下,具備不同級別不同職責(zé)的崗位,就是B端產(chǎn)品的用戶畫像。
因此產(chǎn)品經(jīng)理弄清楚其行業(yè)客戶的組織架構(gòu)下的職位設(shè)置、職級設(shè)置、職責(zé)設(shè)置之間的共性即可。B端產(chǎn)品經(jīng)理對職位、職級、職責(zé)的理解,還有很多值的探討的地方,在此不做詳述。
釘釘?shù)慕巧凑章殑?wù)、崗位進(jìn)行設(shè)置
2.3 場景
場景即用戶使用產(chǎn)品的時間和空間。不同時間不同空間下,意味著用戶可能會使用不同的終端設(shè)備,不同的網(wǎng)絡(luò)情況,執(zhí)行不同的任務(wù),有著不一樣的行為習(xí)慣等等。
C端產(chǎn)品會非常重視用戶場景不同而后殘生的不同需求,比如一款音樂APP:晨間地鐵上,伏案工作中,孤枕難眠時都會有不同的用戶情緒和需求。
作為B端產(chǎn)品,只需重考慮以下兩點(diǎn):一是PC端和移動端上不同場景下的不同權(quán)限;二是如果業(yè)務(wù)操作中涉及工作地點(diǎn)的變更,需要考慮一些數(shù)據(jù)安全性。
2.4 任務(wù)
在B端組織架構(gòu)下,每個角色要執(zhí)行的任務(wù)是由職責(zé)完全決定的,因此理解角色職責(zé),就可以掌握用戶需要在產(chǎn)品上完成的任務(wù)。
比如企業(yè)某部門leader的職責(zé)是負(fù)責(zé)某項(xiàng)業(yè)務(wù)銷售數(shù)據(jù)的增長,那么經(jīng)常統(tǒng)計信息,查看報表任務(wù)會由他們完成,按照角色梳理即可。
在做角色任務(wù)梳理的時候可以從可以做什么、不可以做什么、可以向系統(tǒng)提交哪些數(shù)據(jù)、可以向系統(tǒng)查詢哪些數(shù)據(jù)、可操作的數(shù)據(jù)范圍幾個緯度進(jìn)行入手。
2.5 結(jié)論
通過對角色、場景、任務(wù)的梳理后,根據(jù)共性抽象出權(quán)限系統(tǒng)中的核心要素,角色類型、準(zhǔn)入權(quán)限、使用權(quán)限、數(shù)據(jù)權(quán)限。
同時,在大型組織架構(gòu)以及大型平臺下,還需抽象出組織權(quán)限,應(yīng)用權(quán)限方便進(jìn)行細(xì)粒度的授權(quán)控制。
三、角色
3.1 角色類型
角色從使用的角度劃分,一種是管理角色,一種是業(yè)務(wù)角色。管理角色是針對平臺的管理用戶,用來劃分管理的范圍。業(yè)務(wù)角色是員工在系統(tǒng)中執(zhí)行各種實(shí)際工作流時的角色。
從創(chuàng)建方式的角度劃分,一種是內(nèi)置角色,一種是自定義角色。通常管理角色通過自定義的方式創(chuàng)建,業(yè)務(wù)角色通過內(nèi)置的方式創(chuàng)建。
至于系統(tǒng)應(yīng)該選擇用什么樣的方式定義權(quán)限,根據(jù)產(chǎn)品的組織架構(gòu),和性質(zhì)來劃分:
- 簡單類型產(chǎn)品,沒有工作流:管理角色和業(yè)務(wù)角色重合,根據(jù)需求做到菜單級別自定義授權(quán),或功能級別自定義授權(quán)即可;
- 有工作流,但是組織架構(gòu)較為簡單:管理角色自定義到菜單或功能級別,業(yè)務(wù)角色根據(jù)業(yè)務(wù)流梳理業(yè)務(wù)角色內(nèi)置即可;
- 復(fù)雜組織架構(gòu),復(fù)雜業(yè)務(wù)流:管理角色做到應(yīng)用級別授權(quán),管理員由IT運(yùn)維人員擔(dān)任,他們通常不了解業(yè)務(wù),因此菜單或功能級別的權(quán)限劃分給業(yè)務(wù)角色,業(yè)務(wù)角色根據(jù)工作流引擎內(nèi)置。由于復(fù)雜業(yè)務(wù)流情況下,系統(tǒng)一定會有一套自定義工作流的引擎,用來隨時創(chuàng)建和變更工作流程,因此業(yè)務(wù)角色通常是各個崗位的崗位名稱即可。除此之外,可能還要處理上下級權(quán)限繼承的關(guān)系。
創(chuàng)建變更流程都會用到的業(yè)務(wù)角色
3.2 管理角色
超級管理員
超級管理員角色是擁有最高權(quán)限的角色,通常內(nèi)置一個admin用戶,或者是創(chuàng)建某個管理實(shí)體的用戶。以釘釘為例,對企業(yè)進(jìn)行注冊和創(chuàng)建的用戶即為超級管理員。超級管理員對應(yīng)的用戶只有一個,整個系統(tǒng)歸屬于它,允許變更該用戶,不允許刪除角色。
普通管理員
所有的自定義管理員為普通管理員,其管理權(quán)限配置需配置組織部門權(quán)限和應(yīng)用管理權(quán)限,組織部門權(quán)限是其管理的數(shù)據(jù)范圍,如XX子公司、銷售部,應(yīng)用權(quán)限即各個應(yīng)用。
在釘釘上創(chuàng)建子管理員
3.3 業(yè)務(wù)角色
業(yè)務(wù)角色的權(quán)限體現(xiàn)在工作流中,隨著任務(wù)在不同崗位之間流轉(zhuǎn),不同崗位看到的內(nèi)容完全一樣,只是處理的表單不一樣。
比如請假審批:一張請假單先通過小組leader到部門leader到人事,數(shù)據(jù)一致,只是數(shù)據(jù)的狀態(tài)在發(fā)生改變。根據(jù)職位來配置業(yè)務(wù)角色即可。
一般來說,系統(tǒng)部署好之后,業(yè)務(wù)角色會完全初始化好,變更的話需要通過工作流引擎中添加,或者通過添加代碼的方式增加。通常企業(yè)的職位、職級設(shè)置都相似,變更的情況較少發(fā)生。
3.4 組織權(quán)限
組織架構(gòu)創(chuàng)建之后,會天然的體現(xiàn)組織權(quán)限,表現(xiàn)為數(shù)據(jù)的歸屬和訪問范圍,無需創(chuàng)建角色。組織權(quán)限是自動賦予在部門級別上的權(quán)限。
比如銷售部門擁有銷售數(shù)據(jù)提交、查看、分析報表查看、下載的權(quán)限,那么一個用戶創(chuàng)建到銷售部門下后,會自動繼承該部門的組織權(quán)限,再根據(jù)該用戶的具體業(yè)務(wù)角色在確定其具體可訪問的數(shù)據(jù)。
比如老王是A部門的,那么老王只能訪問A部門的數(shù)據(jù),不能訪問隔壁B部門的數(shù)據(jù)。老王的業(yè)務(wù)角色是普通銷售員,就只能查看自己的數(shù)據(jù),而老王的領(lǐng)導(dǎo)老萬是部門經(jīng)理,就可以查看銷售部所有人員的數(shù)據(jù)。這便是組織權(quán)限的具體體現(xiàn)。
四、權(quán)限
4.1 準(zhǔn)入權(quán)限
準(zhǔn)入權(quán)限是對用戶賬號的登錄限制,原則上屬于用戶賬號體系,和角色關(guān)聯(lián)不大。通常會有如下功能需求:
進(jìn)入限制
直接限制賬號是否擁有登入平臺,或登入某個應(yīng)用的權(quán)限,比如普通員工無法進(jìn)入人事管理應(yīng)用。
二次驗(yàn)證
二次驗(yàn)證是在識別到用戶的登錄地點(diǎn)、登錄設(shè)備、登錄客戶端變更之后的二次驗(yàn)證,做的比較好的如微信的二次登錄驗(yàn)證,支持驗(yàn)證碼,邀請好友驗(yàn)證等多種方式。
時間限制
僅允許在規(guī)定時間之前使用賬號,通常用于發(fā)放試用賬號之類的臨時賬號。
設(shè)備限制
包括特定設(shè)備限制,或者設(shè)備數(shù)量限制。如果是高級別的安全性需求,登錄設(shè)備可能需要先進(jìn)行安全登記,才允許登錄。設(shè)備數(shù)量限制通常是作為付費(fèi)增值服務(wù),比如印象筆記,免費(fèi)用戶最多只允許在兩個設(shè)備上同時使用。
客戶端限制
客戶端限制通常使用的較少,BS應(yīng)用使用任何瀏覽器都可以登錄。筆者僅在企業(yè)郵箱中見過類似限制,Google企業(yè)郵箱如果需要使用foxmail類的第三方郵件客戶端進(jìn)行收發(fā)郵件,僅知道賬號密碼是不夠的,還需要從Google Mail后臺,生成一個實(shí)時動態(tài)密碼進(jìn)行驗(yàn)證才行。
地理位置限制
登錄的地理位置限制,比如只能在工廠范圍內(nèi)。
網(wǎng)絡(luò)限制
網(wǎng)絡(luò)限制通常是企業(yè)的內(nèi)網(wǎng)和外網(wǎng)限制,應(yīng)用和數(shù)據(jù)只能通過企業(yè)內(nèi)網(wǎng)訪問。在一些公安、軍工類安全級別高的場景下,設(shè)備被人為接入外網(wǎng)后,還會立即發(fā)出警報。
4.2 使用權(quán)限
用戶的使用權(quán)限由其組織權(quán)限、業(yè)務(wù)角色、數(shù)據(jù)狀態(tài)共同決定,通常為增、刪、改、查。不做過多贅述。
另外用戶角色可執(zhí)行的任務(wù),通常是可以訪問的系統(tǒng)頁面,在做權(quán)限系統(tǒng)時,除了要求用戶只能訪問被分配權(quán)限的頁面,在用戶通過其他方式,如直接訪問url時,需要能夠進(jìn)行阻止。
4.3 數(shù)據(jù)權(quán)限
數(shù)據(jù)權(quán)限有兩個重要的識別方式,數(shù)據(jù)狀態(tài)和數(shù)據(jù)歸屬。
數(shù)據(jù)狀態(tài)
根據(jù)工作流引擎或者業(yè)務(wù)流程確定,一張請假單可能會有草稿、待審批、審批通過、審批不通過的各種數(shù)據(jù)狀態(tài),不同的數(shù)據(jù)狀態(tài)根據(jù)工作流的配置自動在各個業(yè)務(wù)角色間流轉(zhuǎn)。不同數(shù)據(jù)狀態(tài)下,不同角色擁有不同的操作。
數(shù)據(jù)歸屬
數(shù)據(jù)歸屬即為創(chuàng)建這個數(shù)據(jù)的人或擁有該數(shù)據(jù)的部門,通常情況下數(shù)據(jù)的創(chuàng)建人永遠(yuǎn)擁有該數(shù)據(jù)的可見的權(quán)限,比如我提交的請假單,整個流程中,我都可以隨時查看該數(shù)據(jù)及數(shù)據(jù)狀態(tài)的變更。歷史記錄的查看也依賴創(chuàng)建人擁有數(shù)據(jù)權(quán)限。也有一些特殊情況,比如數(shù)據(jù)歸檔之后,對于創(chuàng)建人,可能就不可見了。
One more thing
本文筆者以釘釘進(jìn)行舉例,實(shí)際上所有的功能權(quán)限都是釘釘租戶權(quán)限,租戶權(quán)限是什么意思呢?
釘釘是一個面向企業(yè)的SaaS服務(wù)系統(tǒng),那么所有的客戶(單個獨(dú)立注冊的企業(yè))在釘釘系統(tǒng)里面都屬于釘釘?shù)淖鈶簟?/p>
在釘釘內(nèi)部,還有另外一個租戶管理系統(tǒng),用以管理所有已注冊租戶,比如對租戶進(jìn)行授權(quán),租戶行為數(shù)據(jù)分析等等。租戶管理系統(tǒng)內(nèi)的用戶權(quán)限也可按照本文的模式進(jìn)行產(chǎn)品設(shè)計。
作者:一直往北方開(微信號:z445388180),多年SaaS產(chǎn)品、購物中心集團(tuán)CRM、自主創(chuàng)業(yè)、云計算虛擬化行業(yè)產(chǎn)品經(jīng)驗(yàn),文章總結(jié)均為落地型實(shí)戰(zhàn)型產(chǎn)品經(jīng)驗(yàn),熱愛閱讀,持續(xù)學(xué)習(xí)者、思考者
本文由 @一直往北方開 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自PEXELS,基于CC0協(xié)議
寫的不錯,看的很爽!點(diǎn)贊了!
您好,我恰好在找具有saas 產(chǎn)品經(jīng)驗(yàn)及對權(quán)限系統(tǒng)產(chǎn)品設(shè)計有一定經(jīng)驗(yàn)的個人或團(tuán)隊合作一些需求,看了您的文章很有啟發(fā),可以進(jìn)一步聊聊嗎?
作者對于數(shù)據(jù)權(quán)限的控制有什么心得嚒
怎么能聯(lián)系到作者 有事情咨詢
有個問題想討論一下,我們做assa產(chǎn)品,目前面臨一個問題,就是針對不同企業(yè)的定制,產(chǎn)品就是不斷的加功能,那導(dǎo)致系統(tǒng)越來越繁雜,怎么樣解決這個問題呢?大神能不能給點(diǎn)幫助!
不同企業(yè)的需求有通用的有不同的,做通用版+專版,若還有特殊需求做定制版加錢就行。
跟老板說做paas+saas吧!我們目前也遇到同樣的問題,可是老板拒絕了我的想法??
感謝分享
寫的比較清楚,希望下次舉例多些,移動指數(shù)3顆星,感覺每個小結(jié)想講清楚都要一篇文章。
好文章,轉(zhuǎn)成腦圖了
可以分享一下嗎?
請問微信號正確嗎?顯示用戶不存在
這是我見過的,從整體層面上把權(quán)限講的比較透徹的文章了。希望有更多權(quán)限的細(xì)節(jié)方面可以分享,大家交流下
謝謝,共同學(xué)習(xí),細(xì)節(jié)上就要根據(jù)具體的業(yè)務(wù)和優(yōu)先級來呢
請問saas產(chǎn)品有哪些形態(tài),或者說市面上有哪些saas產(chǎn)品呢
SaaS是軟件即服務(wù)的意思,可以簡單的理解成以公有云方式提供的軟件服務(wù)
一個權(quán)限就可以寫出如此細(xì)致的文稿,佩服
謝謝,相互學(xué)習(xí)
B端產(chǎn)品,角色與權(quán)限相輔相成。能舉例一下通用的角色與權(quán)限配置么,讓我們更直觀點(diǎn)
文中有用釘釘?shù)膶?shí)際案例進(jìn)行舉例,具體是哪里還有疑問呢
從創(chuàng)建方式的角度劃分,一種是內(nèi)置角色,一種是自定義角色。通常管理角色通過自定義的方式創(chuàng)建,業(yè)務(wù)角色通過內(nèi)置的方式創(chuàng)建。
是不是說反了? 內(nèi)置角色通常是系統(tǒng)自帶的,應(yīng)該是屬于管理角色,自定義角色通常是后期增改刪查的業(yè)務(wù)角色吧?
PS:干貨文,制成導(dǎo)圖了,期待更多分享。
并沒有說反哦,后文中有說到管理角色和業(yè)務(wù)角色的定義
作為一名交互設(shè)計,除了會畫圖之外,更重要是能在需求層面和產(chǎn)品經(jīng)理保持同步。希望能看到更多產(chǎn)品經(jīng)理在前四個層級中與交互的合作點(diǎn)的文章!
嗯,謝謝
總結(jié)的很好??
嗯,謝謝,相互學(xué)習(xí),共同進(jìn)步
可以把這種權(quán)限配置講的更深一些;如,怎么搭配設(shè)計更靈活;
具體是什么呢,如果想了解的更清楚的話,建議直接看一下釘釘后臺會有更深的體會
云計算沒多少人
嗯 公有云都是大廠,私有云倒是有些小廠家
涉及B端產(chǎn)品的知識體系還有介紹的嗎?謝謝!
想了解什么呢