本發(fā)明涉及互聯(lián)網(wǎng)軟件應(yīng)用系統(tǒng)領(lǐng)域,尤其涉及一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理方法、系統(tǒng)、裝置及存儲介質(zhì)。
背景技術(shù):
1、常規(guī)的應(yīng)用系統(tǒng)平臺權(quán)限控制方式大多都是通過基于角色的訪問控制(即role-based?access?control,rbac模型)進行權(quán)限體系的管理與建設(shè)。
2、rbac模型取消了用戶和權(quán)限的直接關(guān)聯(lián),改為通過用戶關(guān)聯(lián)角色、角色關(guān)聯(lián)權(quán)限的方法來間接地賦予用戶權(quán)限。這種方式使得權(quán)限管理更加靈活和高效。
3、通過定義和分配角色,可以輕松添加、修改或刪除權(quán)限,而無需對每個用戶進行單獨修改。通過為每個角色創(chuàng)建一個權(quán)限集,這些權(quán)限定義了該角色可以訪問和操作的數(shù)據(jù)資源和功能。確保了只有擁有相應(yīng)角色的用戶才能訪問特定的數(shù)據(jù)資源。
4、但在企業(yè)級平臺應(yīng)用中面臨著復(fù)雜多部門,多分支管理機構(gòu)的場景,由于數(shù)據(jù)權(quán)限既包括同組織機構(gòu)下的數(shù)據(jù)權(quán)限要求,又包括跨組織機構(gòu)的特殊數(shù)據(jù)權(quán)限要求,傳統(tǒng)的rbac模型的權(quán)限控制同樣帶來一些問題,無法較好的適應(yīng)企業(yè)級平臺及客戶的復(fù)雜管理要求。
5、現(xiàn)有技術(shù)中,通常采用以下方式進行數(shù)據(jù)權(quán)限的落地:
6、1、采用rbac模型,直接在角色中設(shè)定可見的數(shù)據(jù)范圍,限定可見的組織機構(gòu)數(shù)據(jù)。
7、這種方式雖然操作簡單,配置靈活,但遇到角色中關(guān)聯(lián)的數(shù)據(jù)權(quán)限復(fù)雜,如相同功能權(quán)限的角色但數(shù)據(jù)權(quán)限不一致的情況,需要重復(fù)冗余創(chuàng)建多個角色,帶來配置冗余與維護困難的問題。比如核查崗,浙江地區(qū)與北京地區(qū)的人員,需要創(chuàng)建“浙江核查崗”角色,“北京核查崗”角色,以實現(xiàn)不同地區(qū)的核查員查看不同地區(qū)的數(shù)據(jù)。
8、如果企業(yè)要求用戶可見機構(gòu)數(shù)據(jù)較多,如總部核查崗,要求看到浙江、北京、上海等全國的數(shù)據(jù),浙江核查崗,還需要看到本省以及下級機構(gòu)數(shù)據(jù)時,角色中綁定多個機構(gòu)數(shù)據(jù)權(quán)限,當(dāng)機構(gòu)數(shù)據(jù)存在變更的情況,需要維護相關(guān)已配置角色。
9、2、采用acl(access?control?list)訪問控制列表的技術(shù)實現(xiàn)對網(wǎng)絡(luò)數(shù)據(jù)流量的精細(xì)控制和管理。通過定義明確的訪問控制列表,acl允許管理員為特定用戶或用戶組設(shè)置對特定資源的讀、寫、執(zhí)行等權(quán)限。通過對每個訪問數(shù)據(jù)資源列表創(chuàng)建acl規(guī)則的方式進行權(quán)限控制。這種方式雖然實現(xiàn)了對數(shù)據(jù)訪問的精細(xì)控制,提高了數(shù)據(jù)的安全性,但同時帶來維護訪問控制列表的問題,如acl規(guī)則可能因業(yè)務(wù)需求變化而需要頻繁修改,導(dǎo)致維護成本增加。同時acl規(guī)則的匹配和過濾操作可能會消耗一定的計算資源,從而影響網(wǎng)絡(luò)性能,降低業(yè)務(wù)增刪改的性能。還可能因acl規(guī)則配置不當(dāng)可能導(dǎo)致安全風(fēng)險,如允許未經(jīng)授權(quán)的用戶訪問敏感數(shù)據(jù)。
技術(shù)實現(xiàn)思路
1、本發(fā)明目的在于針對現(xiàn)有技術(shù)的不足,提出一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理方法、系統(tǒng)、裝置及存儲介質(zhì),提供全新的數(shù)據(jù)權(quán)限管理模型,解決企業(yè)級多級機構(gòu)數(shù)據(jù)的訪問控制的同時可降低管理員的維護負(fù)擔(dān)與配置工作。對于用戶所在的機構(gòu)樹為非常規(guī)的上下級的樹節(jié)點的層級關(guān)系,在不改變機構(gòu)結(jié)構(gòu)的前提下,設(shè)計用戶的權(quán)限以保證全鏈路的數(shù)據(jù)權(quán)限滿足業(yè)務(wù)要求,以及可以同時避免已配置用戶、角色后期因子機構(gòu)的變更而帶來的維護性問題。
2、本發(fā)明的目的是通過以下技術(shù)方案來實現(xiàn)的:第一方面,本發(fā)明提供了一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理方法,該方法包括以下步驟:
3、(1)在組織機構(gòu)中增設(shè)字段,將機構(gòu)數(shù)據(jù)劃分為層級與部門;
4、(2)在組織機構(gòu)中增設(shè)字段,根據(jù)步驟(1)中機構(gòu)數(shù)據(jù)劃分的不同類型,按照相應(yīng)的預(yù)設(shè)邏輯對該字段進行賦值;
5、(3)根據(jù)實際業(yè)務(wù)數(shù)據(jù)隔離需求,在用戶或角色中,以及業(yè)務(wù)資產(chǎn)中增設(shè)字段,進行業(yè)務(wù)數(shù)據(jù)資產(chǎn)和用戶的權(quán)限匹配;
6、(4)對層級或部門的機構(gòu)數(shù)據(jù)獨立配置約束數(shù)據(jù)隔離規(guī)則;
7、(5)根據(jù)用戶權(quán)限要求構(gòu)建符合登錄用戶權(quán)限范圍內(nèi)的機構(gòu)樹,用戶訪問應(yīng)用系統(tǒng)的功能模塊時,基于構(gòu)建完成的機構(gòu)樹在系統(tǒng)運行時內(nèi)存匹配符合訪問數(shù)據(jù)權(quán)限范圍內(nèi)的組織機構(gòu)的數(shù)據(jù)資源并返回給前端業(yè)務(wù)。
8、進一步地,步驟(1)中,在組織機構(gòu)中增設(shè)“機構(gòu)類型”字段,將機構(gòu)數(shù)據(jù)表示為層級機構(gòu)類型或部門機構(gòu)類型。
9、進一步地,步驟(2)中,在組織機構(gòu)中增設(shè)字段進行賦值,用于確定對應(yīng)機構(gòu)數(shù)據(jù)類型的權(quán)限范圍。
10、進一步地,步驟(3)中,在用戶或角色中,和業(yè)務(wù)資產(chǎn)中增設(shè)“業(yè)務(wù)場景”、“渠道”、“業(yè)務(wù)線”、“業(yè)務(wù)域”或“應(yīng)用”等具備相同業(yè)務(wù)含義的字段,通過分別在登錄用戶與業(yè)務(wù)資產(chǎn)中綁定該字段,實現(xiàn)數(shù)據(jù)的精細(xì)化控制。
11、進一步地,步驟(4)中,對于層級的機構(gòu)數(shù)據(jù),用戶可見本機構(gòu)和下級機構(gòu)數(shù)據(jù),對于部門的機構(gòu)數(shù)據(jù),用戶可見本機構(gòu)和下級機構(gòu)、本部門所屬層級和本部門所屬層級的下級機構(gòu)的數(shù)據(jù);通過“本部門所屬層級的下級機構(gòu)”尋找下級機構(gòu)時,不包含所屬層級的其他部門,實現(xiàn)同一層級間部門的數(shù)據(jù)隔離。
12、進一步地,步驟(4)中,下級機構(gòu)無法查看上級機構(gòu)的數(shù)據(jù),上級機構(gòu)可見下級機構(gòu)數(shù)據(jù);如無上下級的關(guān)聯(lián)關(guān)系,同一層級的節(jié)點機構(gòu)/部門間的數(shù)據(jù)互相隔離不可見。
13、第二方面,本發(fā)明還提供了一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理系統(tǒng),該系統(tǒng)包括:
14、增設(shè)字段模塊,用于在組織機構(gòu)中增設(shè)字段,將機構(gòu)數(shù)據(jù)劃分為層級與部門;以及根據(jù)機構(gòu)數(shù)據(jù)劃分的不同類型,按照相應(yīng)的預(yù)設(shè)邏輯對該字段進行賦值;
15、數(shù)據(jù)隔離模塊,用于對層級或部門的機構(gòu)數(shù)據(jù)獨立配置約束數(shù)據(jù)隔離規(guī)則;
16、機構(gòu)樹構(gòu)建模塊,用于根據(jù)用戶權(quán)限要求構(gòu)建符合登錄用戶權(quán)限范圍內(nèi)的機構(gòu)樹,基于構(gòu)建完成的機構(gòu)樹進行數(shù)據(jù)權(quán)限管理。
17、資產(chǎn)數(shù)據(jù)匹配模塊,用于用戶訪問應(yīng)用系統(tǒng)的功能模塊時,基于構(gòu)建的機構(gòu)數(shù)在系統(tǒng)運行時內(nèi)存匹配符合訪問數(shù)據(jù)權(quán)限范圍內(nèi)的組織機構(gòu)的數(shù)據(jù)資源并最終返回給前端業(yè)務(wù)。
18、第三方面,本發(fā)明還提供了一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理裝置,包括存儲器和一個或多個處理器,所述存儲器中存儲有可執(zhí)行代碼,所述處理器執(zhí)行所述可執(zhí)行代碼時,實現(xiàn)所述的一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理方法。
19、第四方面,本發(fā)明還提供了一種計算機可讀存儲介質(zhì),其上存儲有程序,所述程序被處理器執(zhí)行時,實現(xiàn)所述的一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理方法。
20、第五方面,本發(fā)明還提供了一種計算機程序產(chǎn)品,包括計算機程序,所述計算機程序被處理器執(zhí)行時,實現(xiàn)所述的一種基于組織機構(gòu)的數(shù)據(jù)權(quán)限管理方法。
21、本發(fā)明的有益效果:
22、1.本發(fā)明能夠在不變更原有機構(gòu)樹上下級節(jié)點的基礎(chǔ)上,以最真實最原始的機構(gòu)數(shù)據(jù)實現(xiàn)復(fù)雜機構(gòu)下的企業(yè)級數(shù)據(jù)權(quán)限管理要求。
23、2.本發(fā)明方案具備良好的兼容性和適配性,能極大降低二次定制與研發(fā)成本??赏瑫r兼容適配具有常規(guī)機構(gòu)樹(明確清晰的上下級機構(gòu)節(jié)點,下級機構(gòu)節(jié)點就是機構(gòu)的下級機構(gòu)或部門)、復(fù)雜機構(gòu)樹(分支機構(gòu)與業(yè)務(wù)部門在機構(gòu)樹節(jié)點中為平級節(jié)點,部門上層存在父級機構(gòu)部門)的多種情形。
24、3.本發(fā)明具有良好的擴展性與維護性。在已配置用戶、角色的基礎(chǔ)上,后續(xù)隨著機構(gòu)數(shù)據(jù)的增加,不用再去維護已配置用戶與角色的數(shù)據(jù),用戶數(shù)據(jù)權(quán)限可自動識別新增下級機構(gòu)部門。