【圖解權(quán)限】系統(tǒng)權(quán)限是如何生效的?

0 評(píng)論 6392 瀏覽 38 收藏 6 分鐘

系統(tǒng)權(quán)限涉及身份驗(yàn)證服務(wù)和訪問(wèn)控制服務(wù)兩個(gè)過(guò)程,那么它們是如何操作的呢?本文將簡(jiǎn)述其中的過(guò)程,希望能對(duì)大家有所幫助。

很多產(chǎn)品小伙伴在剛接觸權(quán)限控制問(wèn)題的時(shí)候,往往搜到的都是RBAC、ABAC等權(quán)限控制技術(shù)實(shí)現(xiàn)方法,而這種抽象方法其實(shí)不能夠幫大家形象地了解“權(quán)限是如何生效的”這個(gè)問(wèn)題.為什么不同角色看到的菜單不一樣?不同角色擁有的操作不一樣?同一個(gè)菜單列表里的數(shù)據(jù)范圍也不一樣?

這里主要涉及2大過(guò)程:

  1. 身份驗(yàn)證服務(wù)
  2. 訪問(wèn)控制服務(wù)

今天我試著用圖解的方式,告訴大家權(quán)限是如何生效的。

一、系統(tǒng)權(quán)限如何生效

1. 身份驗(yàn)證服務(wù)

我們打開(kāi)一個(gè)系統(tǒng),第一步要做的就是登錄,最常見(jiàn)的就是使用賬號(hào)密碼登錄。當(dāng)我們輸入正確的賬號(hào)和密碼組合時(shí),提交給系統(tǒng)后,系統(tǒng)的“身份驗(yàn)證服務(wù)”就會(huì)對(duì)我們提交的賬號(hào)和密碼組合進(jìn)行驗(yàn)證,看看是否屬于系統(tǒng)用戶。

【圖解權(quán)限】系統(tǒng)權(quán)限是如何生效的?

身份驗(yàn)證服務(wù)相當(dāng)于門衛(wèi)

在驗(yàn)證成功后,“身份驗(yàn)證服務(wù)”會(huì)給用戶發(fā)一個(gè)憑證,這個(gè)憑證就相當(dāng)于一個(gè)通行證,方便用戶與系統(tǒng)后續(xù)的交互行為。

2. 訪問(wèn)控制服務(wù)

經(jīng)過(guò)身份驗(yàn)證服務(wù)后,算是進(jìn)了系統(tǒng)的“大門”了,但是進(jìn)門之后,并不一定就可以訪問(wèn)系統(tǒng)里所有的內(nèi)容,因?yàn)檫@時(shí)候有“訪問(wèn)控制服務(wù)”來(lái)對(duì)每個(gè)進(jìn)來(lái)的用戶進(jìn)行訪問(wèn)控制。我們常說(shuō)的頁(yè)面權(quán)限控制、操作權(quán)限控制、數(shù)據(jù)權(quán)限控制等都屬與“訪問(wèn)控制”的范疇。

【圖解權(quán)限】系統(tǒng)權(quán)限是如何生效的?

訪問(wèn)控制服務(wù)是“鑰匙”

前面提到的角色權(quán)限控制(RBAC模式)就屬于訪問(wèn)控制的一種經(jīng)典實(shí)現(xiàn)方式,也就是使用“角色”這個(gè)中間對(duì)象,關(guān)聯(lián)允許訪問(wèn)的菜單以及對(duì)應(yīng)菜單上的操作(比如新增、修改、刪除),然后被賦予該角色的用戶都能夠被授予這些訪問(wèn)權(quán)限。

【圖解權(quán)限】系統(tǒng)權(quán)限是如何生效的?

用角色控制菜單和操作權(quán)限

在數(shù)據(jù)權(quán)限上,我們一般使用組織架構(gòu)管理來(lái)進(jìn)行數(shù)據(jù)范圍的控制。比如“訂單管理”菜單中,包含了廣東省所有地級(jí)市的訂單內(nèi)容,我們就使用廣東省總公司(父級(jí))、廣州市分公司(子級(jí))、深圳市分公司(子級(jí))這樣的組織層級(jí),對(duì)訂單管理列表的數(shù)據(jù)內(nèi)容,作一個(gè)地市上的劃分和控制。

比如屬于廣東省總公司層級(jí)的賬號(hào),可以看到所有的訂單數(shù)據(jù),而屬于廣州市分公司層級(jí)的賬號(hào),只能看到廣州市的訂單數(shù)據(jù),看不到其它城市的訂單數(shù)據(jù)。

【圖解權(quán)限】系統(tǒng)權(quán)限是如何生效的?

用組織架構(gòu)進(jìn)行數(shù)據(jù)權(quán)限的區(qū)隔

二、UML時(shí)序圖

下面我們用時(shí)序圖強(qiáng)化一下對(duì)登錄后,權(quán)限生效過(guò)程的理解:

  1. 當(dāng)賬號(hào)密碼通過(guò)驗(yàn)證時(shí),我們就進(jìn)入了系統(tǒng)大門;
  2. 系統(tǒng)根據(jù)訪問(wèn)控制服務(wù)的反饋,加載對(duì)應(yīng)的頁(yè)面元素,其中包含菜單、按鈕、列表數(shù)據(jù)等受訪問(wèn)控制的對(duì)象;
  3. 系統(tǒng)頁(yè)面加載完畢,用戶可以進(jìn)行瀏覽和操作。

【圖解權(quán)限】系統(tǒng)權(quán)限是如何生效的?

本篇僅是想給各位產(chǎn)品經(jīng)理科普權(quán)限生效的過(guò)程,也是“圖解權(quán)限”系列的第一篇,后續(xù)我們會(huì)結(jié)合具體的后臺(tái)頁(yè)面,給大家具體呈現(xiàn)演繹一下RBAC角色權(quán)限控制的實(shí)際效果。

作者:產(chǎn)品經(jīng)理P仔 , 公眾號(hào):產(chǎn)品經(jīng)理P仔

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

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

該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 目前還沒(méi)評(píng)論,等你發(fā)揮!