看一個武俠故事,明白權限的那些事兒
在武俠故事里,功能權限和數據權限體系的解說由“李平”之口娓娓道來。
01
大理寺官衙的一棵古樹下,一位青衣書生正拿著一篇案牘在讀。絲絲涼風吹過,腰間的半片古玉隨風飄蕩。
“啟稟大人,您有一封來自蕊雪客棧的書信,落款是個紅字……”
小吏雙手捧著一封書信,恭敬地站在三尺開外。
“噢?快快呈上?!币宦犚妬碜匀镅┛蜅?,又是一紅字,李平直接丟下了手頭的案牘。
“來,給我?!崩钇较有±舫实锰讲刹奖嫉搅诵±裘媲?,一把搶過了書信。
“權限……”看著書信,李平低聲嘀咕了一句。
疾步走回房間,速速起草了一封回信,仔細卷好,封好火漆后,遞給在門口等待的小吏。
“用飛鴿回復,要快?!崩钇秸f。
“大人,這個不太……?”
“你不用擔心,照我說的做就是了,沒事?!?/p>
小吏領命前去。
“許久未見,不知道紅姑娘如今如何,聽說仰慕者甚重呢,即是紅姑娘所托,還需做更好的準備才好?!毕胫@些,李平回到書桌旁,開始伏案書寫。
蕊雪客棧二樓露臺。
紅姑娘取下飛鴿腳上的信件,抬手將信鴿放飛了回去。
“他同意了呢”紅姑娘笑著扭頭對旁邊的木落說。
“你還真是會替他考慮,也算是一舉兩得吧?!蹦韭湮⑿φf道。
“終于可以把這半塊玉佩還給他了,他這么重情重義,讓人家壓力好大……”紅姑娘嬉笑著搖了搖手里的半塊古玉。
“那可是人家為報救命之恩給你留下的好吧,也就你整天如此嫌棄……”木落微笑著搖頭。
“舉手之勞啊,其實完全不用的,而且也完全用不上呢,還得老念著如何把它還回去……”紅姑娘一付碎碎念心不甘的表情。
木落微笑著不說話。
“如果其他人知道紅姑娘還有如此小女兒的一面,估計都不敢相信吧。”木落默默地想。
02
八月初八。
“聽說了嘛?今天似乎是一位大理寺大官來講學呢。”一個搖著扇子,腰跨寶劍的書生洋洋自得的說道。
“紅姑娘還真是手眼通天呢……嘖嘖嘖……”一個消瘦老漢連聲吧嗒。
“今天似乎要講權限?這是什么鬼東西?”一個濃眉大眼的大漢奇怪地嘟囔道。
“你們懂什么,這可是律法底層的規則,你也不想想大理寺是干什么的,了解了這些規則,行走江湖豈不是快意很多?”
“這位姑娘說的不錯,我看大家還是耐心等待著吧,來講學的人中,又有哪次是讓諸位失望的呢?”
“風公子說的有理?!北娙思娂姼胶?。
“小姐,那人就是風公子,據說古道熱腸,你說我們要不要……”二樓一位戴著斗笠的女客向旁邊坐著的另一位女客說。
“再看看,先看看今天講的是什么吧?!绷硪晃慌突氐?,女客斗笠上的畫字若隱若現。
只聽外面一陣馬嘶響起,眾人紛紛探頭看去。
只見一人青衣飄飄,面色如玉,身后還跟了一隊素衣侍衛,雖是侍衛,卻隱隱撲面而來一股兇煞之氣。
“哎呦,看起來來頭不小呢,護送的人都是上過戰場的呢?!币粋€蠟黃臉的中年嘖嘖稱奇。
只見青衣少年翻身下馬,極為利索地走進客棧。
抬頭望向站在二樓的紅姑娘,神色極度認真,極為恭敬地鞠了一躬。
紅姑娘微微頷首。
“那就先開始吧,大家已經等了好久了呢?!奔t姑娘微笑開口。
“好?!?/p>
青衣少年邁步走向客棧中央空出來的講臺。
“在下李平,目前添為大理寺少卿,今日受紅姑娘所托,前來講授權限相關事項。”
客棧中響起了一片嗡嗡聲。
木落一拍額頭,“忘了讓他不要明示自己的官位了……”
紅姑娘抿嘴笑道:“沒事,這次帶來的人看起來還不錯呢,再不濟,你到時候護送他回去好了……”
“……”木落無奈搖搖頭。
李平站著未動,臺下漸漸安靜了下來。
“既講權限,首先要明白權限是什么?”
“權限,一般是指系統設置的安全規范,主要用來控制用戶僅可查看/修改自己被授權的資源或信息。更多意義上是說,你需要控制某些用戶只能做什么,不能做什么時,需要使用權限。”
“如果是開放式的,不需要控制,那么便完全不用權限?!?/p>
“既然要控制用戶,那么一定是要管理的,只有管理才需要控制。所以,我們可以發現,在有管理訴求的場景下,會需要使用權限,在CRM、ERP、電商后臺、企業服務(釘釘、企業微信)等涉及管理的系統,都需要有相應權限控制?!?/p>
“了解了具體應用的場景,那么我們先了解一下權限到底分為哪幾類?!?/p>
“一般情況下,我們從功能和數據兩位維度來將權限分為功能權限和數據權限?!?/p>
李平隨手遞了一張圖給旁邊侍立的小二,小二張貼在講臺后面立著的板面上。
“當然,這里也有必要解釋一下什么是功能權限和數據權限?!?/p>
“功能權限,顧名思義,控制是否可以操作某些功能的權限,一般比如增加、刪除、查詢、修改,這類權限,我們認為是功能權限。當然,不同業務會有不同的權限控制,這里只是舉一個例子。功能權限意味著,你頁面上的任何一個按鈕,都可以是一個權限?!?/p>
“數據權限,顧名思義,控制是否能看到某些數據的權限。比如有多個城市,可能某些用戶只能看單一城市的權限,某些用戶能看多個城市的權限;甚至某個城市分了多個區域,某些用戶只能看單一區域的數據,這就是數據權限?!?/p>
說完,又拿出了一張紙,小二恭敬接過,貼在了板面上。
“了解了基礎概念之后,我們來詳細解說一下權限模塊相關的結構和設計?!?/p>
03
“下面,我們先說功能權限部分,功能權限如果詳細區分,還可以區分為頁面權限和按鈕權限。”
“這兩種權限可以分開管理,也可以統一管理,由于性質基本類似,所以本次放在一起進行講解?!?/p>
小二將泡好的茶,端上了講桌,李平含笑微微頷首表示感謝。
“前面我們已經講了,權限是用來控制人的。那么權限的結構就出來了,就是把權限賦予人?!崩钇诫S手抽了最上面一張圖遞給了旁邊侍立的小二。
“一般情況下,對于小團體,或者成員不多,結構不復雜,其實這就足以滿足訴求了?!?/p>
“當然,你們所了解的功能權限可能并不是這樣,為什么不是這樣的呢?因為如果僅僅只這樣做,會遇到一些問題,我們接下來描述一個場景,你就大概明白了。”
“現在團體只有2個人,用的是同樣的權限,你給每個人都分配了需要的功能。然后團體變大了,5個人、10個人、100個人、1000個人。假設每個人要配置的權限是20個,則每多一個人,則多出來一倍的量,人一多,怕是要哭暈在廁所了。”
臺下一片哄笑。
“所以,在場景一的情況下,權限的配置會變得十分繁瑣。不是十分合理,因為未考慮權限體系的擴展性,人一多,效率就會變得極其低下。且一旦有修改,你就需要每個人獨立修改……那時候怕是哭都哭不出來了……”李平微笑著繼續開口。
臺下又是一片笑聲。
斗笠上帶著“畫”字的少女“噗”的一聲笑出了聲。
“這人有點意思。”她忙拿起茶杯,抿了一口說道。
“因此,這種權限體系并不是特別友好,擴展性較低,那有沒有更好的方法呢?”李平并未受臺下的影響,神秘一笑。
“基于角色的權限訪問控制,Role-Based Access Control,簡稱RBAC,今天我們講功能權限的核心也是這個?!?/p>
“RBAC根據場景的不同,有多種變種方式,我們會根據場景逐一講解,今天先講最基礎的RBAC權限控制?!崩钇诫S手將手邊的圖紙遞給小二。
“在這套權限體系中,我們在原有權限結構的基礎上,新增了一個中間值,叫角色。將對應的權限賦予相應的角色,然后把角色賦予給人,則人就會擁有該角色所擁有的全部權限。”
李平隨手又遞了一張圖,小二恭敬地貼在板面上。
“一個權限可以賦予給多個角色,一個角色也可以擁有多個權限。一個人可以擁有多個角色,一個角色也可以賦予多個人,雖然他們是多對多的關系,但是請注意箭頭指向,代表著誰賦予誰。人擁有角色,角色擁有權限。”
“這樣看起來略有一些抽象,我們根據場景還原一下,這樣會加深理解?!?/p>
“場景一:我朝約有1500余縣,每縣設縣令,每個縣令的權限都一致,約有50余項權利。那么此時我們如何做呢,我們只需要建立一個’縣令’的角色,將對應權限賦予該角色,然后將人都配上縣令這個角色即可。就可避免出現每個縣令均需要配置50余項權利,只配置一次即可。”
李平端起案桌上的水杯喝了一口,略作停歇。
“場景二:一縣令即將升任為刺史,但新縣令尚未派遣,此時,該縣令既需要擁有刺史相應的權利,也需要負責縣令相關的事物,那么此時,就可以將’刺史’,’縣令’兩個角色均賦予該人,則該人即有用刺史的權利,也有用縣令的權利?!?/p>
(注:州為縣的上級,一州約轄5縣。——百度百科)
“場景三:前段時間朝廷剛發布公文,鹽政不再由各個州縣自行管轄,均收歸國有,由國家直接管轄,那么縣令將不再有鹽政管轄相關權利,此時,我們只需要將縣令角色中鹽政管轄功能去掉,所有的縣令均不再有該功能權利。調整會十分方便?!?/p>
“場景四:揚州刺史告老還鄉,僅需將刺史之角色從該官員身上拿走,則該官員即無管轄之能,對其他刺史毫無影響,也十分便利?!?/p>
李平略停頓了下,環顧四周,發現眾人皆在仔細思考,微微一笑。
“由此可見,RBAC權限架構體系,具有更好的擴展性和便捷性。那么講到這里,RBAC的基礎功能已經講完了。”
“這部分架構已基本適用于大多數的團體,一般情況下已足夠使用。當然,為了適應更復雜的場景,RBAC還有一些進階版本,我們下面將開始講它的進階版本,以便于滿足更復雜的場景?!?/p>
講完了RBAC的基礎,李平忽然頓了頓,開口說道:“諸位若對剛才講的有什么疑惑,也可直接提出來,我們當場解答。”
“這套體系是否適用于所有團體?”二樓一個窗口,一個穿著金色華服的少年若有所思的問道。
“難道說乾通天下的少東家要拿這套東西管理自家的錢莊?”一層大廳的眾人議論紛紛。
“趙公子還真是有想法,就是不知道他老爹是否會任著他胡鬧。”一個有著絡腮胡子的漢子干了一碗酒說道,眼中隱隱約約透露出不屑。
“可不能這么說,你還不知道吧,當年大陸兩大錢莊爭雄,一方敗北,乾通天下開始雄霸大陸,據說背后完全是趙公子的手段呢,那時候趙公子才幾歲?”拿著扇子的書生一臉感嘆的表情看著二樓說道。
“你說的可是真的?”絡腮漢子一臉震驚。
“真的假不了,假的也真不了,你且以后看著就是?!睍黠@不愿解釋很多。
李平微笑著看向二樓。
“這套體系經過朝廷這幾十年來的驗證,幾乎可適配任何團體。不過……”
“不過什么?”趙公子追問。
“不過每個團體都有自己團體獨立的管理手段和方法,并不是所有團體都跟朝廷體制一樣。因此,對于不同團體,還需要在該理論的基礎上做一些擴展,讓這套理論能夠和自身團體的管理方法相結合,才能更好地發揮作用?!?/p>
趙公子若有所思地點點頭。
李平收回了目光。
“剛才所說的架構已經基本適用于所有團體,當然會有一些進階的結構用來適應于更多的場景,我們將對這些較為復雜的場景逐一講解,以便于大家更好的理解這套體系?!?/p>
“目前每縣設縣令一人,師爺一人,捕快三人,每人權限不同,有大有小。按照我們上面的結構,縣令有縣令的權限,師爺有師爺的權限,捕快有捕快的權限,分別獨立設置即可滿足?!?/p>
李平將一張圖遞于小二。
“場景五:縣令有縣令的權限,師爺有師爺的,捕快有捕快的,很完美。但是也會有一些小問題。前段時間朝廷取消地方鹽政管理的相關權限,那么縣令的權限要調整一遍,師爺的權限也要調整一遍,在角色不多的情況下,一切都還好,若有大量角色時,依然會十分繁瑣。”
“那么有沒有更好的方法呢?”李平笑著看了一下四周。大家似乎都還挺感興趣。
然后,他抽出一張紙遞給了小二。
“我們可以在角色上增加層級的概念,上層角色會自動擁有下層角色擁有的全部權限。同時該角色也可以有自己的獨立的權限,最終上層角色的權限集合是所有權限的并集?!?/p>
“在這種方式下,就會較完美的處理上面這種場景的問題,取消地方鹽政權限,直接將師爺的權限取消,縣令自然就沒有相關權限了。這種方式,叫做繼承。即上級角色繼承下級角色的功能?!崩钇酵A艘幌拢员阌诖蠹依斫夂拖?。
“當然,這里涉及到了一個角色層級的概念,其實本質上是組織架構,就像我朝現在的組織架構一樣,不過這些目前暫不是重點。后面有機會會再單獨講組織架構相關內容。”
“這種較為復雜的場景講完了,我們來看另外一種場景?!?/p>
小二拿著茶壺走了上來,默默地將水杯里的水加滿。
“場景六:我是大理寺少卿,平時一般負責審理相關案件,前段時間,有人在御前參了我一本,狀告我重重罪行,最終該案件被移至大理寺評審?!?/p>
“還有這等趣事?”木落聽到后笑道。
“在皇帝面前狀告他的兒子,也真是佩服朝中某些人能做的出來。”紅姑娘笑著說。
“畢竟此事知者甚少,也難怪,短短幾年走完別人要走一生的路,皇帝偏袒的有點過了,也怪不得別人試探?!蹦韭湟馕渡铋L的說。
紅姑娘笑著看了木落一眼,沒有說話。
“雖然我為大理寺少卿,但我已身涉案件,自然不能再做審理?!崩钇江h顧一周。
“說道這里,大家應該都大概明白了,一個人不能既是被告,又是法官。在這套體系中亦如是。因此,面對這種場景,體系中應該有明確沖突的角色限定。即若你是某個角色,你就不能是另外一個角色?!?/p>
小二很自覺地前去接過李平手中的圖紙。
“因此,在有必要的情況下,還需要在權限體系中去定義互斥類的角色,以避免某天真的出現了既是法官,又是原告的尷尬情況?!?/p>
臺下一片哄笑。
“對于限制性,除了避免出現沖突的角色分于同一個人之外,還有一種場景需要諸位考慮?!?/p>
“場景七:每天開始的時候,縣令有自己的一堆事情要做,批改文書,審理案件,捕快也有自己的一堆事情要做,抓捕犯人,例行巡邏。你會發現,雖然縣令擁有所有的權限,但是對于他自己本身的工作而言,在他的工作臺中,他需要關注的內容和捕快需要關注的內容是不一樣的?!?/p>
“你沒辦法要求縣令每天上街巡邏,你也不能讓縣令去處理捕快的工作,因此,在整個權限體系中,在某些特殊場合下,還需要定義角色的優先級,或者僅允許一個主要角色進行處理?!?/p>
李平喝了一口水,臺下眾人皆若有所思。
“定義角色優先級指的是,若你既是縣令,又是捕快(即權限工作出現重疊的時候),你需要按照縣令的身份,去處理縣令的工作,批改文書,審理案件。縣令這個角色的優先級比捕快高?!?/p>
“當然,如果你作為一個縣令,一定要去實際體驗捕快的工作的話,那就在工作臺中切換角色為捕快,那么此時就會告訴你縣城里有哪些街道需要巡邏,哪些犯人需要抓捕?!?/p>
李平緩緩將杯中的水喝完,給眾人留了幾分鐘思考的時間。
“那么,在權限體系已經到了這種情況下,是否還有可以提升的地方呢?”
臺下議論紛紛,都這么多場景了,應該沒有了吧。
趙公子眉頭緊鎖,似乎覺得已經能解決所有問題,但是又感覺似乎還缺點什么。
“似乎,如果職位切換比較頻繁的時候,還欠缺了點什么?”趙公子不太確定地說道。
李平深深的看了趙公子一眼,心道,這少年果然不一般。
“誠然,這里面其實還有更深的兩層可以考慮?!?/p>
“場景八:我朝每年都會派遣一批人,作為監察御史,分東南西北四方體察民情,大事奏裁,小事立斷,政事得失,軍民利病,皆得直言無避。這些監察御史平時都有自己的職責和角色,在分派去往不同方向巡查時,需分配給每個人相應的權限,在巡視結束,有需要將每個人相應的權限收回。由于巡查人數眾多,雖然有權限體系支持,但依然過于繁瑣。”
李平略作停頓。
“因此,基于此,我們引入用戶組的概念,我們設立‘監察御史’組,給監察御史組分配了‘監察御史’的角色權限,然后將所有成員拉入‘監察御史’組,則該成員自動擁有‘監察御史’組所擁有的權限。等任務完成后,直接將成員清除該監察御史組即可,對應成員自動失去監察御史的權限。通過這種方式,更加方便地管理。”
小二從李平手里接過一張圖貼在了板子上。
“基于此,基本上功能權限體系已經講完了。”
04
“但是,權限這套體系是否真的是能解決所有問題?他的優勢在哪里?劣勢又在哪里呢?”
“RBAC權限體系依據角色為載體,更加方便所有成員權限的管理(新增+調整),這是一個巨大的優勢,但請一定關注,這套體系是用來更加方便的管理權限的,它不是權限本身?!?/p>
“那權限本身是什么?”一個黃臉漢子直接開口問。
李平笑了一下,還未說話。
“李公子剛才已經說了,對應功能權限而言,你的頁面,你頁面上的任意一個按鈕,那才是權限。”風公子倒是接上了話。
黃臉漢子臉一紅,默默地低頭喝水。
“那劣勢是什么呢?”看到問題已解決,李平繼續說道。
“RBAC是基于角色的一套體系,那么既然是基于角色,那么角色一定是個最小單元。那就意味著,同一角色的權限一定是一樣的。但是,實際上是否真的是一樣的呢?我朝1500余縣,每縣皆有一位師爺,但是每縣的師爺擁有的權限一定相同么?”
“林業比較發達的縣,師爺要關注林業,而無林業,卻有漁業的縣,師爺要關注的漁業。兩方資源都有的,師爺也需要關注兩方。所以,雖然RBAC帶來了極大地便利性,但在同時也喪失了一部分靈活程度。”
“我們要知道,直接把權限賦予人,即最基礎的權限管理,雖然維護和管理起來十分費事,但卻也最自由?!?/p>
“因此,是否有可能將RBAC和最基礎的權限管理結合一下呢?”李平微笑說道。
“這個問題就算是留給各位的思考題了,若有所得,也可相互間交流一番。消息留在客棧即可,我收到后自會回復?!?/p>
李平端起水喝了一口,茶杯還未放下,就接著開口。
05
“功能權限講完了,我們來說一下數據權限?!?/p>
“既然說數據權限,那就需要明確一下數據的概念,這里的數據并不是你能看哪個頁面不能看那個頁面的意思,那個是頁面權限,跟數據權限沒關系?!?/p>
“那么數據權限到底是什么?我舉一個例子大家就明白了。每個縣每年的征兵數據、田賦數據、人口出生和死亡數據,都由每個縣獨立管理,其他縣無法獲知其他縣數據。刺史因為下轄五縣,因此他能知道下面五個縣所有的數據,但刺史也并不知道其他州的數據,逐級向上擴展?!?/p>
“所以,數據要確認的是能看到的數據范圍?!崩钇教ь^看了趙公子一眼。
“就像對于乾通天下,各個地方的掌柜,也只能掌握自己錢莊的收支、借貸和利潤,而不會知道其他錢莊的數據,而對于負責一整個區域的大掌柜,則可以看到其區域所有的錢莊的數據,而對于少東家,就能知道所有的數據?!?/p>
趙公子點了點頭。
“那么對于數據權限,如何處理呢?”李平微微抬頭,望向臺下。
“聽李公子舉的幾個例子,數據權限涉及到層級,層級越低的人看的越少,層級越高的看的越多,那就是跟組織架構有關了?”風公子站起來說。
李平笑著點點頭。
“風公子說的不錯,確實跟組織架構有關。當然也會有其他方式,我們先講一種簡單的方式?!?/p>
李平遞給小二一張圖,小二順利接過。
“這種方式與基礎的功能權限有點類似。即將每個縣的數據,都作為一個點,如果是某縣縣令,則分配對應縣數據,對于刺史,就分配五個縣的數據。”
臺下人紛紛搖頭,這樣太麻煩了吧,1500余縣,要死人的。
李平靜靜的聽著臺下的討論,并未開口。
臺下討論一會后,慢慢的安靜了下來。風公子的眼中似乎有了一絲其他的神采。趙公子也忽然揚了揚眉毛。
“其實,對于大多數團體,沒有太多區域的時候,這種方式可能才是最靈活,最簡單的。除非已經擴展到了很大的區域。畢竟不是每個團體都跟朝廷一樣的。”
臺下人均點點頭,表示認可。
“那么若區域很大的時候,應該如何通過數據權限管理呢?”趙公子忽然問道。
“如果說基礎的數據權限管理和功能權限管理是類似的話,那么解決數據權限的思路是否也跟功能權限類似?”風公子忽然接到。
李平望向風公子,暗嘆,果然不愧是能以一己之力在江湖闖下偌大名頭的風公子,聰明絕頂,一點就通。
“風公子說的沒錯,他們確實是類似的。上面已經提到了,數據權限很依賴層級,那么組織架構就需要大概說一下了,其實比較簡單?!?/p>
李平伸手向小二遞出了一張圖。
“組織架構相對比較好管理,更多的是一個部門間的層級關系。那么數據權限本身是什么呢?”
“數據權限包括:全部數據,本部全部數據,本部及子部全部數據,本人全部數據,本人及下屬全部數據。這里需要簡單解釋下這幾種數據權限的含義。”李平環顧了一下四周。
臺下眾人皆是眉頭緊鎖。李平心道,果然數據權限雖然解釋起來很簡單,但真正落地理解時還是會有很大難點。
“數據權限本身與層級結構完全沒有關系,是獨立于功能權限和組織架構之外的一套體系,但由于它跟層級又有緊密聯系,所以,它與組織架構又緊密相連。”
“全部數據指的是全部的實際數據,這是一個無比慎重的權限。只要將該權限分配給任意一個人,他就能看到全部的數據。哪怕分配給一個縣令,它也能看到我朝全部的數據,因此,這個數據權限分配時要非常慎重?!?/p>
李平低頭喝了一口茶,發現茶有些涼了,就隨手放到了桌邊。
小二看到,里面上前端走去換新茶。
“本部全部數據,即意味著可以查看本部的全部數據,對一個縣令而言,就可查看自己縣全部的數據。”
“本部及子部全部數據,即意味著可以查看本部及附屬部的全部數據,對于州長官刺史而言,就需要可以看到州的數據和下屬五個縣的數據?!?/p>
李平接過新茶,飲了一口。
“敢問先生,那本部全部數據和本部及子部全部數據,這兩個數據權限有何區別呢?”二樓戴著斗笠的女子起身施了一禮,問道。
李平環顧了一下四周,發現大多數人皆有疑問。
“這是個好問題。就以揚州為例,揚州刺史除了負責揚州本城所有數據信息以外,也需要負責下轄五縣的所有數據信息。而對于揚州刺史下屬的判司等職,其實只需要關注揚州本城的所有數據,那么在此時,他們僅需要本部的全部數據,而無需去負責下轄部門的所有數據。這就是這兩種數據權限的區別,會讓數據的管理更加靈活一些?!?/p>
眾人聽后,略作思索,紛紛點頭。
“那對于個人數據和個人及下屬的數據就比較好理解了。對于一個捕快而言,他抓了哪些囚犯,哪些審訊的結果如何,每個捕快只需要關注自己的數據即可,其他捕快的數據可能并不需要對其開發,他也不需要了解。而如果捕快需要助手的時候,助手處理的信息其實該捕快也需要關注?!?/p>
“當然,在這里引出了一個助手的概念,那么在成員管理的時候,就需要能在體系中明示這個人的助手是誰,是否的話,這個權限就與個人數據權限是完全一致的?!?/p>
“數據權限本身已經說完了。那么到底如何管理呢?”
李平遞了一張圖給小二,小二恭敬的貼在板子上。
“其實跟功能權限很類似,功能權限中我們用角色承載功能權限分給成員,在數據權限中我們用職權承載數據權限分給成員。當然,在不同的團體中,是叫職能還是職權還是其他的,就看怎么理解起來更順暢了?!?/p>
“數據權限講到這里,基本上也就差不多了,但還有一點需要大家關注,對于上面所說的賦稅、人口等信息需要數據權限控制,那么對于朝廷對外發布的公文是否也需要數據權限的控制呢?”
“這個自然是不用的,這本來就是給所有人看的?!睋u著扇子的書生回道。
“嗯,所以,到底什么樣的數據需要使用數據權限控制,也是需要定義的,這點勿忘。”李平道。
“這里有一張圖可以明確表示功能權限和數據權限的應用,可以看一下,加深理解?!?/p>
李平遞了一張圖給小二。
“權限體系講到此就差不多了,多謝各位聆聽。”李平站在臺上向諸人施禮。
06
李平正待抬步走向二樓紅姑娘的位置,忽然一個侍衛進來進來對其耳語了幾句。
李平聽后眉頭一皺,隨即立在當場,抬手向紅姑娘方向說道:“今日幸不辱使命,原想多逗留幾日,但皇城似乎發生了大事,待我處理完后再前來賠罪。我這里留下了一些實際使用時的部分書稿,若有興趣,也可分給眾人。”
說完,不待紅姑娘回復,便快速轉身離去。
“剛好卡在這個點上,是擔心我們與其接觸么?”紅姑娘微微笑著望向木落。
木落搖搖頭,嘆了一聲。
“我走一趟吧。”說完飛身下樓。
“接著這個。”紅姑娘丟出手中的半塊古玉。
木落反身接住,徑直出了客棧。
人潮開始漸漸走出客棧,風公子也站起身來,向紅姑娘走去,似要告別。
“小姐,你再不下決斷,風公子就要走了……”戴著畫字斗笠的一位女客對旁邊的女客說。
旁邊的女客,眼神慢慢由猶疑變為堅定,站起身來……
作者:?contsun;公眾號:腳量產品路
本文由 @contsun 原創發布于人人都是產品經理,未經許可,禁止轉載
題圖來自 Unsplash,基于 CC0 協議
用戶有組織架構,可參照職級數據權限,比如本部門即子部門
用戶有角色,角色打包了功能權限
那么,業務數據權限,如果不掛在角色上(為了不創建很多功能權限相同但數據權限不同的角色,造成冗余)
應該是可以直接設置給用戶,或者創建數據權限包(包含多維度的數據權限規則),然后賦予用戶
這樣是否可以解決問題
可以的啊,這不就是文章中聊的“職能”么,專門用來處理數據權限的打包問題。
厲害了
干貨好文,點贊。
還有一種思路,對角色既有功能權限,同時也配置了數據權限。這樣進行授權。不知到對比起來優劣怎么樣
這種方式會導致整個結構無比復雜,因為耦合在一起的話,任何一點小小的區別,就需要重新設置角色。比如功能權限都一樣,數據權限不同,就要重新設置角色。
好文!角色可以再向下最深,就是權限資源管理,基于資源配置角色,角色擴展性更好更靈活
你說的資源配置不知是不是這個意思:角色既有功能權限,同時也配置了數據權限?
話說起來你是公司的組織架構么。每個人都有對應角色組定義:運營、UI、產品等等。里面的部長、組員就是角色。不同的角色有著各自數據范圍,上級可以看到所有下級角色數據。
其實這個還要補充一點。每個公司核心都是有對應的產業鏈。產業鏈和金錢密切相關。對應產業鏈有著對應的核心數據和分支數據。每個角色至少占一個核心數據。dui?z
寫的這個角度很有新意啊,厲害~
哈哈,有幫助就好,感謝
最后一張圖不太清楚
需要大圖么,可以單發你
?? ?? ?? 生動有趣
哈哈,有幫助就好~
厲害,受益匪淺
有幫助就好,比心~
公子真乃神人也 ??
哈哈,感謝,你想寫的話,你也可以的
期間提了個問題?請問是什么答案