不同的員工在公司享有不同的權(quán)限,用戶可以訪問而且只能訪問自己被授權(quán)的資源。那么,權(quán)限管理功能要如何設(shè)計呢?本文作者對此進(jìn)行了分析,希望對你有幫助。
何為基座,即是有了這些基礎(chǔ),任一相關(guān)的“建筑”就能逐步搭建起來。
萬丈高樓平地起
一、為什么要權(quán)限管理
權(quán)限管理,一般指根據(jù)系統(tǒng)設(shè)置的安全規(guī)則或者安全策略,用戶可以訪問而且只能訪問自己被授權(quán)的資源。只要有用戶和密碼的系統(tǒng),幾乎全有權(quán)限管理。
1. 各司其職,提高工作效率
產(chǎn)品經(jīng)理的品質(zhì)追求和項目的里程碑交互是矛盾的,讓產(chǎn)品經(jīng)理管項目,可能項目沒有終結(jié)點。
程序員的邏輯嚴(yán)謹(jǐn)和市場的變化多端是矛盾的,讓程序員去做市場銷售,可能團(tuán)隊沒有太多收益。
2. 權(quán)責(zé)分明,利于問題溯源
授予管理的權(quán)限,同時也是一份責(zé)任。費(fèi)用的報銷和預(yù)算消耗所剩無幾是相關(guān)聯(lián)的,打市場需要團(tuán)隊成員全員硬剛和請假審批松散導(dǎo)致身邊無人可用是有前因后果的。
3. 數(shù)據(jù)隔離,依權(quán)限管理數(shù)據(jù)
市場部的日常執(zhí)行信息不斷反饋給采購部,會極大地消耗采購部的精力。
戰(zhàn)略規(guī)劃部的規(guī)劃調(diào)整隨時更新給一線執(zhí)行人員,會極大地摧毀公司整體的穩(wěn)固度。
4. 安全防患,防止誤操作、人為破壞、數(shù)據(jù)泄漏
某某程序員刪庫跑路了,某某銷售代表攜客戶資源跳槽了……此類事項屢屢出現(xiàn),這總是前人血淚教訓(xùn)。
二、權(quán)限管理
軟件系統(tǒng)三基座包含:權(quán)限管理、組織架構(gòu)、用戶管理。按照系統(tǒng)管理的設(shè)計,交互如下圖所示。
以用戶管理為例,需要支持最基礎(chǔ)的增刪改查操作,即是添加用戶、編輯用戶、刪除用戶、查詢用戶。
以現(xiàn)實業(yè)務(wù)情況,系統(tǒng)用戶的增加包含用戶注冊或管理員添加。對于其他系統(tǒng)用戶來講,用戶管理這一塊與自己無關(guān),不必查看,就需要做權(quán)限管控。
權(quán)限管理和現(xiàn)實中的開鎖相似。首先需要了解哪些地方需要加鎖,公園就不需要加鎖,即是權(quán)限點注冊;其次是在需要加鎖的地方放上鎖,并給需要的人發(fā)放鑰匙,即是授權(quán);最后則是有鑰匙的人拿著鑰匙開鎖,沒有鑰匙則在封鎖區(qū)域之外,即是鑒權(quán)。
哪些地方加鎖 = 權(quán)限點注冊
上鎖并發(fā)放鑰匙 = 授權(quán)
拿鑰匙開鎖 = 鑒權(quán)
1. 權(quán)限點注冊
權(quán)限點注冊是軟件哪些功能需要做權(quán)限控制,就添加到權(quán)限控制的列表中。注冊成功后,權(quán)限點樹形結(jié)構(gòu)展示,如下圖所示。
權(quán)限點注冊支持樹形結(jié)構(gòu),也就是沒有授權(quán)“用戶管理”時,不能授權(quán)“刪除用戶”。權(quán)限點還可以細(xì)分按鈕權(quán)限、URL權(quán)限,按鈕權(quán)限控制頁面上是否可見,URL權(quán)限控制按鈕的交互是否能執(zhí)行。一般的情況下,對同一個操作需要既授予按鈕權(quán)限,又授予URL權(quán)限。若存在系統(tǒng)間接口數(shù)據(jù)交互的情況,不需要頁面交互,就不必授予按鈕權(quán)限。
權(quán)限管理作為底層支持,可擴(kuò)展更多模塊、更多應(yīng)用的管理。在三基座授權(quán)管理的基礎(chǔ)上,增加產(chǎn)品管理,則權(quán)限點注冊后如下圖所示。
2. 授權(quán)管理
授權(quán)管理就是針對不同的用戶授予不同的權(quán)限,也就能讓不同的用戶看到不同的軟件部分。
如圖所示,給用戶A授權(quán)“添加用戶、編輯用戶、刪除用戶、查詢用戶”權(quán)限;給用戶B授權(quán)“查詢用戶”;兩個用戶相比較而言,用戶B就只能查詢用戶,相當(dāng)于獲取用戶信息,則不能進(jìn)行用戶信息的編輯、修改。
兩個用戶都沒有授權(quán)“用戶授權(quán)”,則兩個用戶都不能修改用戶的權(quán)限信息。
用戶授權(quán)信息均由系統(tǒng)超管員(一般為admin賬戶)授權(quán)分發(fā)下來。
用以上含產(chǎn)品管理的系統(tǒng)進(jìn)行授權(quán)管理,則可授權(quán)兩大類,一類是A:系統(tǒng)管理,有權(quán)限管理、角色管理、用戶管理權(quán)限,適用于人事;一類是B:產(chǎn)品管理員,有產(chǎn)品管理權(quán)限,適用于市場部人員。
A 人事:
B 產(chǎn)品管理員:
3. 鑒權(quán)
鑒權(quán)則是應(yīng)用自己的權(quán)限去打開對應(yīng)的系統(tǒng)功能。如上面授權(quán)舉例,系統(tǒng)管理員A、產(chǎn)品管理員B則看到不同的系統(tǒng)功能。
系統(tǒng)管理員 A:
產(chǎn)品管理員 B:
三、權(quán)限管理應(yīng)用場景
1. 人員變動之入職/調(diào)崗
在實際業(yè)務(wù)中,常存在新人入職,或在崗人員調(diào)崗的情況。若依舊使用給人員授權(quán)的情況,讓整個操作變的復(fù)雜。 用戶直接授權(quán)如下圖所示:
如圖所示,需要新人入職授權(quán),就需要給新人挨個去授權(quán)每個功能;需要調(diào)崗,就需要先刪除原有的所有權(quán)限,然后再授予新的權(quán)限。
基于系統(tǒng)要能用、好用的原則,增加角色管理,如下圖所示:
如圖所示,需要新人入職授權(quán),就只需要勾選新人所屬的角色;需要調(diào)崗,就只需要先去掉原先的角色,勾選上新的角色,整體操作簡便更多。
隨著人員變多,業(yè)務(wù)變復(fù)雜,系統(tǒng)功能更龐大,權(quán)限管理體系還需要調(diào)整。如上例,若新人是個特殊人才,除了通有角色的權(quán)限,還需要一個單獨(dú)權(quán)限,就需要增加用戶直接授權(quán)的能力。當(dāng)然,也可以新建一個單獨(dú)的角色,只有這一個特殊的權(quán)限來實現(xiàn)。這也正體現(xiàn)了現(xiàn)實業(yè)務(wù)的復(fù)雜性,沒有最好的,只有最適合當(dāng)前業(yè)務(wù)需要的。
2. 三方應(yīng)用權(quán)限管理
在三基座的基礎(chǔ)上,擴(kuò)展了產(chǎn)品管理,但作為系統(tǒng),功能遠(yuǎn)遠(yuǎn)不夠。電商類的需要擴(kuò)展,商品管理、訂單管理、支付管理、活動管理、積分管理等等一系列的功能模塊或應(yīng)用。
權(quán)限系統(tǒng)具有以上能力,為系統(tǒng)擴(kuò)展打好了基礎(chǔ)。增加的應(yīng)用,通過權(quán)限點注冊,全部納入權(quán)限管理的范圍內(nèi)。若權(quán)限系統(tǒng)把權(quán)限點注冊、權(quán)限查詢、權(quán)限校驗開放成為OpenAPI,則能夠兼容三方應(yīng)用的權(quán)限管理。
支持三方應(yīng)用的權(quán)限點管理,就能實現(xiàn)三方應(yīng)用在較小的改造成本下,納入系統(tǒng)下,為系統(tǒng)的融合擴(kuò)展提供了支持。
權(quán)限點管理:
添加權(quán)限點:
天臺十萬八千丈,祥云送我上青天。
前行需要一架梯子,你在梯子上拉拉我,我在梯子上拉拉你。
本文由 @壹叁零壹 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自 Unsplash,基于 CC0 協(xié)議
該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。