本發(fā)明涉及計算機數(shù)據(jù)安全領(lǐng)域,尤其涉及一種細粒度的權(quán)限控制方法、裝置、設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、隨著信息技術(shù)的快速發(fā)展和全球數(shù)據(jù)量的劇增,數(shù)據(jù)安全已成為企業(yè)和組織面臨的一項重大挑戰(zhàn)。數(shù)據(jù)安全關(guān)乎個人信息保護、企業(yè)知識產(chǎn)權(quán)以及關(guān)鍵商業(yè)操作的安全性。因此,確保敏感數(shù)據(jù)的安全成為了一個重要議題。然而,早期的數(shù)據(jù)安全解決方案主要側(cè)重于防火墻和傳統(tǒng)的安全機制,這些機制通常專注于防止外部攻擊,而對于內(nèi)部威脅和細粒度的數(shù)據(jù)訪問控制則處理不足。此外,隨著云計算和分布式系統(tǒng)的流行,數(shù)據(jù)越來越多地被存儲在分布式環(huán)境中,這使得數(shù)據(jù)的管理和保護更加復(fù)雜。比如有以下關(guān)鍵問題:
2、(1)細粒度訪問控制:需要對數(shù)據(jù)訪問進行更細致的控制,不僅僅是哪些用戶可以訪問系統(tǒng),還包括他們可以訪問和操作數(shù)據(jù)的具體方式。
3、(2)動態(tài)權(quán)限管理:隨著組織結(jié)構(gòu)和業(yè)務(wù)需求的變化,權(quán)限管理系統(tǒng)需要能夠靈活地調(diào)整和實時更新,以應(yīng)對不斷變化的訪問需求。
4、(3)多環(huán)境兼容性:隨著企業(yè)it架構(gòu)的多樣化,數(shù)據(jù)安全解決方案需要能夠在多種環(huán)境中有效工作,包括傳統(tǒng)的數(shù)據(jù)中心、私有云和公有云。
5、綜上所述,現(xiàn)有的數(shù)據(jù)安全解決方案存在對內(nèi)部威脅的防護不足、缺乏靈活的動態(tài)權(quán)限管理能力以及在多種環(huán)境中應(yīng)用的兼容性差等問題,這些缺陷限制了其在日益復(fù)雜的數(shù)據(jù)環(huán)境中的有效性,亟需提出更加完善和創(chuàng)新的解決方案。
技術(shù)實現(xiàn)思路
1、針對現(xiàn)有技術(shù)的不足,本發(fā)明提出一種細粒度的權(quán)限控制方法、裝置、設(shè)備和存儲介質(zhì),解決了現(xiàn)有技術(shù)中細粒度訪問控制,動態(tài)權(quán)限管理,多環(huán)境兼容等的問題。
2、具體技術(shù)方案如下:
3、一種細粒度的權(quán)限控制方法,包括以下步驟:
4、s1:對用戶進行權(quán)限組分組,不同的權(quán)限組擁有不同的數(shù)據(jù)訪問權(quán)限,所述數(shù)據(jù)訪問權(quán)限包括列權(quán)限和行權(quán)限;
5、s2、編輯數(shù)據(jù)表的列權(quán)限:對數(shù)據(jù)表中的每個字段,即每一列,分別關(guān)聯(lián)一個或多個權(quán)限組,只有關(guān)聯(lián)的權(quán)限組有該字段的執(zhí)行權(quán)限;所述執(zhí)行權(quán)限包括:讀取、寫入、更新、刪除;當安全策略更新時,對列權(quán)限進行動態(tài)編輯;
6、s3、編輯數(shù)據(jù)表的行權(quán)限:對數(shù)據(jù)表中的每條數(shù)據(jù)記錄,即每一行,分別關(guān)聯(lián)一個或多個權(quán)限組,只有滿足對應(yīng)的行權(quán)限條件并關(guān)聯(lián)的權(quán)限組有該條數(shù)據(jù)記錄的執(zhí)行權(quán)限;所述行權(quán)限條件根據(jù)業(yè)務(wù)規(guī)則或數(shù)據(jù)敏感性生成;當安全策略更新時,動態(tài)更新行權(quán)限條件,并對行權(quán)限進行動態(tài)編輯;
7、s4:對用戶發(fā)起的數(shù)據(jù)請求sql語句進行解析,并根據(jù)設(shè)置的列權(quán)限和行權(quán)限驗證用戶是否具有對應(yīng)數(shù)據(jù)的權(quán)限,若有,則執(zhí)行數(shù)據(jù)請求;反之,則不執(zhí)行。
8、進一步地,所述s2具體通過如下子步驟實現(xiàn):
9、s201:從數(shù)據(jù)庫中選擇需要配置列權(quán)限的數(shù)據(jù)表;
10、s202:將選定的數(shù)據(jù)表的列權(quán)限關(guān)聯(lián)到一個或多個權(quán)限組;
11、s203:選擇數(shù)據(jù)表中需要配置列權(quán)限的具體字段;
12、s204:對于每個選擇的字段,設(shè)置一個或多個權(quán)限組對該字段的執(zhí)行權(quán)限。
13、進一步地,所述s202中,若現(xiàn)有權(quán)限組無法實現(xiàn)列權(quán)限關(guān)聯(lián)要求,創(chuàng)建新的權(quán)限組,并將需要關(guān)聯(lián)列權(quán)限的用戶添加到新的權(quán)限組中,將選定的數(shù)據(jù)表的列權(quán)限與新的權(quán)限組關(guān)聯(lián)。
14、進一步地,所述s3具體通過如下子步驟實現(xiàn):
15、s301:從數(shù)據(jù)庫中選擇需要配置行權(quán)限的數(shù)據(jù)表;
16、s302:將選定的數(shù)據(jù)表的行權(quán)限關(guān)聯(lián)到一個或多個權(quán)限組;
17、s303、編輯行權(quán)限條件:為關(guān)聯(lián)的權(quán)限組設(shè)置行權(quán)限條件,所述行權(quán)限條件為基于數(shù)據(jù)表中的特定字段值的條件表達式對應(yīng)的sql語句;
18、s304、設(shè)置行執(zhí)行權(quán)限:基于定義的行權(quán)限條件,設(shè)置權(quán)限組對數(shù)據(jù)表中各行的執(zhí)行權(quán)限。
19、進一步地,所述s302中,若現(xiàn)有權(quán)限組無法實現(xiàn)行權(quán)限關(guān)聯(lián)要求,創(chuàng)建新的權(quán)限組,并將需要關(guān)聯(lián)行權(quán)限的用戶添加到新的權(quán)限組中,將選定的數(shù)據(jù)表的行權(quán)限與新的權(quán)限組關(guān)聯(lián)。
20、進一步地,所述s303具體包括如下步驟:
21、s3031:根據(jù)需要選擇數(shù)據(jù)庫中需要設(shè)置行權(quán)限的字段;
22、s3032:判斷選擇的字段所屬的類型;數(shù)據(jù)庫中的字段根據(jù)屬性分為:數(shù)值類、字符串類、用戶屬性類;選擇的字段根據(jù)其屬性歸入對應(yīng)類型;
23、s3033:根據(jù)字段所屬的類型設(shè)置字段條件:
24、若字段類型為數(shù)值類,設(shè)置該字段的取值范圍;
25、若字段類型為字符串類,為數(shù)據(jù)庫中該字段的現(xiàn)有值的枚舉值或新增自定義值,使該字段的值等于某一字符串,或?qū)儆谀骋粋€字符串集合,或不屬于某一個字符串集合;
26、若字段類型為用戶屬性類,設(shè)置該字段的值等于用戶屬性表中的相應(yīng)屬性的某一個值,或?qū)儆谟脩魧傩员碇械南鄳?yīng)屬性中某些值的集合,或不屬于用戶屬性表中的相應(yīng)屬性中某些值的集合;
27、s3034:根據(jù)設(shè)置的字段條件,生成對應(yīng)sql語義的sql條件語句,得到行權(quán)限條件。
28、進一步地,管理員通過圖形用戶界面或命令行界面執(zhí)行s2和s3。
29、一種細粒度的權(quán)限控制裝置,用于實現(xiàn)所述的細粒度的權(quán)限控制方法,包括:權(quán)限配置模塊、安全策略編輯模塊、身份驗證模塊、sql解析模塊、訪問控制模塊、日志和審計模塊、界面管理模塊;
30、所述權(quán)限配置模塊用于定義和管理用戶及其所屬權(quán)限組的數(shù)據(jù)訪問權(quán)限,管理員通過該模塊將用戶分入不同權(quán)限組并分配不同的列權(quán)限和行權(quán)限;
31、所述安全策略編輯模塊用于實時編輯和更新安全策略,管理員通過該模塊創(chuàng)建和修改對數(shù)據(jù)表的行權(quán)限條件和列權(quán)限;
32、所述身份驗證模塊用于驗證發(fā)出數(shù)據(jù)請求的用戶的身份和所擁有的數(shù)據(jù)訪問權(quán)限;
33、所述sql解析模塊用于解析用戶發(fā)起的數(shù)據(jù)請求sql語句,并拼接行權(quán)限條件和列權(quán)限的sql語句;
34、所述訪問控制模塊用于檢查用戶發(fā)起的數(shù)據(jù)請求sql語句與當前權(quán)限配置的兼容性,并根據(jù)用戶的權(quán)限決定是否允許執(zhí)行sql操作;
35、所述日志和審計模塊用于記錄用戶提出的所有數(shù)據(jù)請求;
36、所述界面管理模塊用于提供可視化界面,允許管理員通過該界面配置權(quán)限和安全策略,并監(jiān)控系統(tǒng)狀態(tài)。
37、一種電子設(shè)備,包括存儲器和一個或多個處理器,所述存儲器中存儲有可執(zhí)行代碼,所述一個或多個處理器執(zhí)行所述可執(zhí)行代碼時,用于實現(xiàn)所述的細粒度的權(quán)限控制方法。
38、一種計算機可讀存儲介質(zhì),其上存儲有程序,該程序被處理器執(zhí)行時,實現(xiàn)所述的細粒度的權(quán)限控制方法。
39、本發(fā)明的有益效果是:
40、(1)本發(fā)明通過列權(quán)限和行權(quán)限的設(shè)置,實現(xiàn)了對數(shù)據(jù)訪問的細粒度控制,并通過精確的權(quán)限控制減少了數(shù)據(jù)泄露和未授權(quán)訪問的風險,提高了安全性。
41、(2)本發(fā)明能動態(tài)地調(diào)整列權(quán)限和行權(quán)限設(shè)置,以適應(yīng)業(yè)務(wù)需求和安全策略的變化。
42、(3)本發(fā)明通過權(quán)限配置模塊和安全策略編輯模塊,集中進行列權(quán)限和行權(quán)限配置,以及安全策略的調(diào)整,使管理更為便捷。