本發(fā)明涉及數(shù)據(jù)安全領(lǐng)域,具體地涉及一種數(shù)據(jù)庫權(quán)限控制方法。
背景技術(shù):
1、數(shù)據(jù)安全是數(shù)據(jù)庫管理的重要組成部分,數(shù)據(jù)安全是指保護(hù)數(shù)據(jù)庫中存儲的數(shù)據(jù)不受未授權(quán)訪問、泄露、篡改或破壞的一系列措施和策略。保護(hù)數(shù)據(jù)安全可以防止敏感信息泄露給未經(jīng)授權(quán)的賬戶,并且確保數(shù)據(jù)未被未經(jīng)授權(quán)的修改、損壞或丟失?,F(xiàn)有技術(shù)中,通常通過基于靜態(tài)規(guī)則和預(yù)定義的訪問權(quán)限來識別異?;顒樱?,對訪問控制、數(shù)據(jù)加密和審計日志等數(shù)據(jù)庫行為進(jìn)行監(jiān)控,對未授權(quán)的賬戶進(jìn)行識別和阻止。
2、在實施本發(fā)明的過程中,發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題,通過靜態(tài)規(guī)則和預(yù)定義的訪問權(quán)限的手段對數(shù)據(jù)安全進(jìn)行保障,僅能夠?qū)我坏漠惓_M(jìn)行檢測,難以對動態(tài)變化的用戶行為進(jìn)行識別和檢測,因此難以有效識別和響應(yīng)例如密碼泄露等潛在威脅。
技術(shù)實現(xiàn)思路
1、鑒于上述問題,本發(fā)明提供了一種數(shù)據(jù)庫權(quán)限控制方法。
2、根據(jù)本發(fā)明的第一個方面,提供了一種數(shù)據(jù)庫權(quán)限控制方法,包括:響應(yīng)于用戶提交的對數(shù)據(jù)庫的操作行為,確定數(shù)據(jù)庫觸發(fā)器捕獲的操作語句,其中,操作語句包括用于對數(shù)據(jù)庫進(jìn)行定義、修改和查詢的結(jié)構(gòu)化查詢語句;利用數(shù)據(jù)庫攔截腳本,攔截操作行為;基于操作語句,確定用戶的操作特征;利用用戶的用戶畫像對操作特征進(jìn)行驗證,得到第一驗證結(jié)果,其中,用戶畫像是基于用戶對數(shù)據(jù)庫的歷史操作行為確定的;在第一驗證結(jié)果表征操作特征與用戶畫像不匹配的情況下,基于第一驗證結(jié)果,確定操作行為的異常情況;基于異常情況,確定對用戶的操作權(quán)限的調(diào)整方案;利用數(shù)據(jù)庫攔截腳本,以調(diào)整后的操作權(quán)限執(zhí)行操作行為,其中,調(diào)整后的操作權(quán)限是按照調(diào)整方案對操作權(quán)限進(jìn)行調(diào)整后得到的。
3、根據(jù)本發(fā)明的實施例,數(shù)據(jù)庫權(quán)限控制方法還包括:將異常情況和調(diào)整方案發(fā)送至管理員,以便管理員基于異常情況和調(diào)整方案確定審核結(jié)果;基于管理員的管理畫像對審核結(jié)果進(jìn)行驗證,得到第二驗證結(jié)果,其中,管理畫像是基于管理員對數(shù)據(jù)庫的歷史調(diào)整方案的歷史審核結(jié)果確定的;基于第二驗證結(jié)果和審核結(jié)果,對調(diào)整方案進(jìn)行修正。
4、根據(jù)本發(fā)明的實施例,基于第二驗證結(jié)果和審核結(jié)果,對調(diào)整方案進(jìn)行修正,包括:在第二驗證結(jié)果表征審核結(jié)果與管理畫像匹配的情況下,利用審核結(jié)果對調(diào)整方案進(jìn)行修正;在第二驗證結(jié)果表征審核結(jié)果與管理畫像不匹配的情況下,確定與審核結(jié)果相反的修正方案;利用修正方案對調(diào)整方案進(jìn)行修正。
5、根據(jù)本發(fā)明的實施例,操作特征包括操作時間、操作頻率、操作類型、操作習(xí)慣、操作地址;基于操作語句,確定用戶的操作特征,包括:基于操作語句的提交時間和提交頻率,確定操作時間和操作頻率;基于操作語句的類型,確定操作類型;基于操作語句的內(nèi)容,確定操作習(xí)慣;基于操作語句的提交地址,確定操作地址;基于操作時間、操作頻率、操作類型、操作習(xí)慣和操作地址,確定用戶的操作特征。
6、根據(jù)本發(fā)明的實施例,數(shù)據(jù)庫權(quán)限控制方法還包括:利用數(shù)據(jù)庫觸發(fā)器和數(shù)據(jù)庫攔截腳本實時記錄用戶對數(shù)據(jù)庫的操作行為;基于用戶對數(shù)據(jù)庫的歷史操作行為,確定歷史操作語句,其中,歷史操作語句包括用于對數(shù)據(jù)庫進(jìn)行定義、操作和查詢的結(jié)構(gòu)化查詢語句;基于歷史操作語句,確定用戶的歷史操作特征,其中,歷史操作特征包括歷史操作時間、歷史操作頻率、歷史操作類型、歷史操作習(xí)慣、歷史操作地址;基于歷史操作特征,確定用戶的用戶畫像。
7、根據(jù)本發(fā)明的實施例,利用用戶的用戶畫像對操作特征進(jìn)行驗證,得到第一驗證結(jié)果,包括:基于歷史操作時間和操作時間,確定時間相似度;基于歷史操作頻率和操作頻率,確定頻率相似度;基于歷史操作類型和操作類型,確定類型相似度;基于歷史操作習(xí)慣和操作習(xí)慣,確定習(xí)慣相似度;基于時間相似度、頻率相似度、類型相似度和習(xí)慣相似度,確定特征相似度;在特征相似度小于相似度閾值或歷史操作地址與操作地址不匹配的情況下,確定第一驗證結(jié)果表征操作特征與用戶畫像不匹配。
8、根據(jù)本發(fā)明的實施例,異常情況包括異常類型和異常等級,其中,異常類型包括頻率異常、操作異常、網(wǎng)絡(luò)異常;基于第一驗證結(jié)果,確定操作行為的異常情況,包括:在頻率相似度表征歷史操作頻率和操作頻率不匹配的情況下,確定異常類型包括頻率異常;在習(xí)慣相似度表征歷史操作習(xí)慣和操作習(xí)慣不匹配的情況下,確定異常類型包括操作異常;在歷史操作地址與操作地址不匹配的情況下,確定異常類型包括網(wǎng)絡(luò)異常。
9、根據(jù)本發(fā)明的實施例,基于異常情況,確定對用戶的操作權(quán)限的調(diào)整方案,包括:基于異常類型,確定對操作權(quán)限的調(diào)整類型,其中,調(diào)整類型包括鎖定賬戶、重新驗證、鎖定地址;基于異常等級,確定告警等級;基于調(diào)整類型和告警等級,確定調(diào)整方案。
10、根據(jù)本發(fā)明的實施例,基于異常類型,確定對操作權(quán)限的調(diào)整類型,包括:在異常類型包括頻率異常的情況下,確定調(diào)整類型包括鎖定賬戶和重新驗證;在異常類型包括操作異常的情況下,確定調(diào)整類型包括重新驗證;在異常類型包括網(wǎng)絡(luò)異常的情況下,確定調(diào)整類型包括鎖定地址和重新驗證。
11、根據(jù)本發(fā)明的實施例,數(shù)據(jù)庫權(quán)限控制方法還包括:在第一驗證結(jié)果表征操作特征與用戶畫像不匹配的情況下,將操作語句保存至數(shù)據(jù)庫的日志文件;在需要進(jìn)行數(shù)據(jù)庫恢復(fù)的情況下,基于日志文件生成數(shù)據(jù)庫恢復(fù)語句;在數(shù)據(jù)庫上執(zhí)行數(shù)據(jù)庫恢復(fù)語句,完成數(shù)據(jù)庫恢復(fù)。
12、本發(fā)明的第二方面提供了一種數(shù)據(jù)庫權(quán)限控制裝置,包括:
13、語句確定模塊,用于響應(yīng)于用戶提交的對數(shù)據(jù)庫的操作行為,確定數(shù)據(jù)庫觸發(fā)器捕獲的操作語句,其中,操作語句包括用于對數(shù)據(jù)庫進(jìn)行定義、修改和查詢的結(jié)構(gòu)化查詢語句;
14、操作攔截模塊,用于利用數(shù)據(jù)庫攔截腳本,攔截操作行為;
15、特征確定模塊,用于基于操作語句,確定用戶的操作特征;
16、操作驗證模塊,用于利用用戶的用戶畫像對操作特征進(jìn)行驗證,得到第一驗證結(jié)果,其中,用戶畫像是基于用戶對數(shù)據(jù)庫的歷史操作行為確定的;
17、異常確定模塊,用于在第一驗證結(jié)果表征操作特征與用戶畫像不匹配的情況下,基于第一驗證結(jié)果,確定操作行為的異常情況;
18、權(quán)限調(diào)整模塊,用于基于異常情況,確定對用戶的操作權(quán)限的調(diào)整方案;
19、操作執(zhí)行模塊,用于利用數(shù)據(jù)庫攔截腳本,以調(diào)整后的操作權(quán)限執(zhí)行操作行為,其中,調(diào)整后的操作權(quán)限是按照調(diào)整方案對操作權(quán)限進(jìn)行調(diào)整后得到的。
20、本發(fā)明的第三方面提供了一種電子設(shè)備,包括:一個或多個處理器;存儲器,用于存儲一個或多個計算機(jī)程序,其中,上述一個或多個處理器執(zhí)行上述一個或多個計算機(jī)程序以實現(xiàn)上述方法的步驟。
21、本發(fā)明的第四方面還提供了一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序或指令,上述計算機(jī)程序或指令被處理器執(zhí)行時實現(xiàn)上述方法的步驟。
22、本發(fā)明的第五方面還提供了一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序或指令,上述計算機(jī)程序或指令被處理器執(zhí)行時實現(xiàn)上述方法的步驟。
23、根據(jù)本發(fā)明的實施例,響應(yīng)于用戶提交的對數(shù)據(jù)庫的操作行為,暫時攔截操作行為并確定操作語句,確定用戶的操作特征,并利用操作特征和用戶畫像確定用戶的操作行為是否異常,得到第一驗證結(jié)果。通過分析操作特征與用戶畫像,可以利用用戶行為的規(guī)律性對操作行為進(jìn)行判斷,提高對于操作行為的識別的精準(zhǔn)度。對操作行為進(jìn)行暫時攔截,能夠避免異常行為直接對數(shù)據(jù)庫進(jìn)行操作導(dǎo)致的數(shù)據(jù)丟失、數(shù)據(jù)泄漏等問題,提高數(shù)據(jù)庫安全性。根據(jù)第一驗證結(jié)果,確定操作行為是否異常并在操作行為異常的情況下確定對用戶的操作權(quán)限的調(diào)整方案,并利用數(shù)據(jù)庫攔截腳本,以調(diào)整后的操作權(quán)限執(zhí)行操作行為。能夠在確定調(diào)整方案后對用戶權(quán)限進(jìn)行調(diào)整,并及時以調(diào)整后的操作權(quán)限執(zhí)行操作行為,在確保數(shù)據(jù)庫安全性的前提下,還能夠提高操作行為的響應(yīng)速度,提高用戶體驗。