蘇偉
摘 要
有效的管控好數(shù)據(jù)庫操作員對后臺核心數(shù)據(jù)的批量操作,建立起批量數(shù)據(jù)操作的預(yù)判、授權(quán)、審計流程,可減少核心數(shù)據(jù)批量誤操作的概率,降低人為因素失誤造成企業(yè)核心數(shù)據(jù)破壞的風(fēng)險。本文研究如何利用現(xiàn)有的賬號權(quán)限審計管理系統(tǒng),通過引入數(shù)據(jù)庫批量操作語句管控的設(shè)計思想,提供一套有效的數(shù)據(jù)庫批量操作的管控體系。
【關(guān)鍵詞】數(shù)據(jù)庫 批量操作 管控體系
1 引言
隨著企業(yè)信息化建設(shè)程度不斷提高,信息系統(tǒng)的大量核心業(yè)務(wù)數(shù)據(jù)存放在各系統(tǒng)的后臺數(shù)據(jù)庫中。這些數(shù)據(jù)的日常維護大多是由系統(tǒng)管理和開發(fā)人員進行的。由于工作需求,他們都具備了直接訪問獲取和處理核心數(shù)據(jù)的權(quán)限。如果無法控制對于數(shù)據(jù)庫中核心數(shù)據(jù)的訪問行為,就有可能導(dǎo)致核心業(yè)務(wù)數(shù)據(jù)的泄露和破壞,直接影響到企業(yè)正常生產(chǎn)經(jīng)營,因此必須加強數(shù)據(jù)庫操作的管理。
根據(jù)維護經(jīng)驗,信息系統(tǒng)故障不少來至內(nèi)部人員的批量誤操作。俗話說得好:“事后控制不如事中控制,事中控制不如事前控制”,我們就是需要通過數(shù)據(jù)庫庫批量操作語句的管控設(shè)計,有效地降低操作員批量誤操作的風(fēng)險。
2 技術(shù)需求概述
數(shù)據(jù)庫操作語句中,批量操作語句由于能夠通過單條語句影響到多條數(shù)據(jù),尤其是update/insert/delete等,直接實現(xiàn)對于數(shù)據(jù)的批量修改、新增和刪除,需要具備專項管控手段,進行嚴(yán)格管控。通過設(shè)計數(shù)據(jù)庫批量操作語句管控系統(tǒng),可以在出現(xiàn)用戶使用批量操作語句進行數(shù)據(jù)庫操作時,及時發(fā)現(xiàn)并進行管控,保護數(shù)據(jù)庫核心數(shù)據(jù)安全。設(shè)計和實現(xiàn)目標(biāo)是:
(1)能夠攔截用戶的數(shù)據(jù)庫操作語句;
(2)能夠針對攔截到的語句進行語句分析,判斷是否匹配觸發(fā)規(guī)則;
(3)針對符合規(guī)則語句判斷其操作影響數(shù)據(jù)條數(shù),是否達到或超過管控閥值;
(4)針對達到管控閥值的語句能夠阻斷其執(zhí)行,并提示用戶進行授權(quán)申請;
(5)針對未達到管控閥值或未匹配觸發(fā)規(guī)則的語句直接放行,保證其能正常執(zhí)行;
(6)觸發(fā)規(guī)則、管控閥值可以由系統(tǒng)管理員通過系統(tǒng)提供界面進行設(shè)定;
(7)對于語句阻斷、用戶申請授權(quán)、語句授權(quán)通過執(zhí)行的過程能夠記錄完整日志,提供查詢。
3 體系架構(gòu)分析及設(shè)計
3.1 場景環(huán)境
現(xiàn)場已部署帳號權(quán)限審計管理的堡壘機系統(tǒng),用戶日常訪問數(shù)據(jù)庫都是使用部署在堡壘機上的數(shù)據(jù)庫客戶端訪問工具進行訪問?,F(xiàn)場已接入管理數(shù)據(jù)庫資源類型主要是Oracle,使用配套訪問工具為PL/SQL Developer。
3.2 典型腳本分析
Oracle環(huán)境下常用的批量操作語句類型如下(暫只考慮Insert/Update/Delete三種典型類型):
(1)INSERT類型。
INSERT table1 values(v1, v2);
INSERT table1(c1,c2,c3) (select v1,v2,v3 from table2)
(2)UPDATE類型。
UPDATE table1 set col_na = v;
UPDATE table1 set col_na1 = v1 where col_na2 in (select col_na2 from table2 where col_na3 = v3);
UPDATE table1 set (col_na1, col_na2) = (select (col_na1, col_na2) from table2 where col_na3 = table1.col_na3) where table1.col_na4 = v;
(3)DELETE類型。
DELETE table1;
DELETE from table1 where col_na in (select col_na from table2 where col_na = v);
由于根據(jù)本系統(tǒng)需求特性,只需要判斷最外層操作影響范圍,對于復(fù)雜嵌套語句,皆可歸并為以上實例類型。系統(tǒng)需要針對以上類型語句進行解析,判斷實際操作影響行數(shù),根據(jù)設(shè)定閥值進行管控觸發(fā)。
3.3 核心思想及實現(xiàn)流程
針對批量操作語句,進行解析和重新組裝,根據(jù)語句中相關(guān)查詢條件,判斷該語句執(zhí)行后影響數(shù)據(jù)條目數(shù)。針對同類型操作,同操作對象,預(yù)先設(shè)定影響條目數(shù)上限閥值,一旦發(fā)現(xiàn)影響條目數(shù)超過閥值,則要求用戶進行操作授權(quán)申請。本系統(tǒng)核心功能流程如下:
(1)用戶通過plsql發(fā)送執(zhí)行sql語句;
(2)系統(tǒng)攔截該語句;
(3)系統(tǒng)對于該語句進行解析;
(4)系統(tǒng)判斷解析結(jié)果是否有攔截策略相匹配,如沒有,則放過該語句繼續(xù)執(zhí)行;
(5)如果有匹配策略,則獲取該語句執(zhí)行影響條數(shù);
(6)判斷影響條數(shù)是否超過策略定義的閥值,如未達到,則放過該語句繼續(xù)執(zhí)行;
(7)如超過,則提示用戶進行需要進行授權(quán)申請,申請未通過,則該語句被阻斷,并提示用戶;
(8)如申請通過,則該語句繼續(xù)執(zhí)行。
3.4 授權(quán)設(shè)定
對于觸發(fā)審批后,PLSQL界面彈出窗口提示用戶當(dāng)前操作必須獲取授權(quán)才能執(zhí)行,我們系統(tǒng)設(shè)計時可以考慮現(xiàn)場授權(quán)和遠程手機短信方式進行授權(quán)。
3.5 操作日志
對于數(shù)據(jù)庫操作日志,我們依托堡壘機的審計功能進行記錄
針對每次管控觸發(fā),提供授權(quán)日志,包括授權(quán)觸發(fā)、授權(quán)審批、授權(quán)結(jié)果等過程的操作人、操作時間、操作觸發(fā)控制點、審批人、審批結(jié)果等,都進行相關(guān)記錄。
4 結(jié)束語
通過以上的管控體系,有效地減少了批量操作失誤的概率,有效的保障企業(yè)信息系統(tǒng)的平穩(wěn)運行。但是系統(tǒng)不是萬能的,有再好的管控系統(tǒng)也可能會出現(xiàn)人為誤操作,對于核心數(shù)據(jù)的操作務(wù)必謹(jǐn)慎再謹(jǐn)慎,落實有方案、有審批、有備份、有復(fù)核、有審計的管理要求,才能有效的規(guī)避相關(guān)誤操作的發(fā)生,這才是最終的管理目標(biāo)。
參考文獻
[1](瑞士)Christian Antognini 著,童家旺 等譯.Oracle性能診斷藝術(shù)[M].北京:人民郵電出版社,2009.
[2]嚴(yán)冬梅 著,數(shù)據(jù)庫原理M].北京:清華大學(xué)出版社,2011.
作者單位
中國聯(lián)通廣西分公司 廣西壯族自治區(qū)南寧市 530028endprint
摘 要
有效的管控好數(shù)據(jù)庫操作員對后臺核心數(shù)據(jù)的批量操作,建立起批量數(shù)據(jù)操作的預(yù)判、授權(quán)、審計流程,可減少核心數(shù)據(jù)批量誤操作的概率,降低人為因素失誤造成企業(yè)核心數(shù)據(jù)破壞的風(fēng)險。本文研究如何利用現(xiàn)有的賬號權(quán)限審計管理系統(tǒng),通過引入數(shù)據(jù)庫批量操作語句管控的設(shè)計思想,提供一套有效的數(shù)據(jù)庫批量操作的管控體系。
【關(guān)鍵詞】數(shù)據(jù)庫 批量操作 管控體系
1 引言
隨著企業(yè)信息化建設(shè)程度不斷提高,信息系統(tǒng)的大量核心業(yè)務(wù)數(shù)據(jù)存放在各系統(tǒng)的后臺數(shù)據(jù)庫中。這些數(shù)據(jù)的日常維護大多是由系統(tǒng)管理和開發(fā)人員進行的。由于工作需求,他們都具備了直接訪問獲取和處理核心數(shù)據(jù)的權(quán)限。如果無法控制對于數(shù)據(jù)庫中核心數(shù)據(jù)的訪問行為,就有可能導(dǎo)致核心業(yè)務(wù)數(shù)據(jù)的泄露和破壞,直接影響到企業(yè)正常生產(chǎn)經(jīng)營,因此必須加強數(shù)據(jù)庫操作的管理。
根據(jù)維護經(jīng)驗,信息系統(tǒng)故障不少來至內(nèi)部人員的批量誤操作。俗話說得好:“事后控制不如事中控制,事中控制不如事前控制”,我們就是需要通過數(shù)據(jù)庫庫批量操作語句的管控設(shè)計,有效地降低操作員批量誤操作的風(fēng)險。
2 技術(shù)需求概述
數(shù)據(jù)庫操作語句中,批量操作語句由于能夠通過單條語句影響到多條數(shù)據(jù),尤其是update/insert/delete等,直接實現(xiàn)對于數(shù)據(jù)的批量修改、新增和刪除,需要具備專項管控手段,進行嚴(yán)格管控。通過設(shè)計數(shù)據(jù)庫批量操作語句管控系統(tǒng),可以在出現(xiàn)用戶使用批量操作語句進行數(shù)據(jù)庫操作時,及時發(fā)現(xiàn)并進行管控,保護數(shù)據(jù)庫核心數(shù)據(jù)安全。設(shè)計和實現(xiàn)目標(biāo)是:
(1)能夠攔截用戶的數(shù)據(jù)庫操作語句;
(2)能夠針對攔截到的語句進行語句分析,判斷是否匹配觸發(fā)規(guī)則;
(3)針對符合規(guī)則語句判斷其操作影響數(shù)據(jù)條數(shù),是否達到或超過管控閥值;
(4)針對達到管控閥值的語句能夠阻斷其執(zhí)行,并提示用戶進行授權(quán)申請;
(5)針對未達到管控閥值或未匹配觸發(fā)規(guī)則的語句直接放行,保證其能正常執(zhí)行;
(6)觸發(fā)規(guī)則、管控閥值可以由系統(tǒng)管理員通過系統(tǒng)提供界面進行設(shè)定;
(7)對于語句阻斷、用戶申請授權(quán)、語句授權(quán)通過執(zhí)行的過程能夠記錄完整日志,提供查詢。
3 體系架構(gòu)分析及設(shè)計
3.1 場景環(huán)境
現(xiàn)場已部署帳號權(quán)限審計管理的堡壘機系統(tǒng),用戶日常訪問數(shù)據(jù)庫都是使用部署在堡壘機上的數(shù)據(jù)庫客戶端訪問工具進行訪問。現(xiàn)場已接入管理數(shù)據(jù)庫資源類型主要是Oracle,使用配套訪問工具為PL/SQL Developer。
3.2 典型腳本分析
Oracle環(huán)境下常用的批量操作語句類型如下(暫只考慮Insert/Update/Delete三種典型類型):
(1)INSERT類型。
INSERT table1 values(v1, v2);
INSERT table1(c1,c2,c3) (select v1,v2,v3 from table2)
(2)UPDATE類型。
UPDATE table1 set col_na = v;
UPDATE table1 set col_na1 = v1 where col_na2 in (select col_na2 from table2 where col_na3 = v3);
UPDATE table1 set (col_na1, col_na2) = (select (col_na1, col_na2) from table2 where col_na3 = table1.col_na3) where table1.col_na4 = v;
(3)DELETE類型。
DELETE table1;
DELETE from table1 where col_na in (select col_na from table2 where col_na = v);
由于根據(jù)本系統(tǒng)需求特性,只需要判斷最外層操作影響范圍,對于復(fù)雜嵌套語句,皆可歸并為以上實例類型。系統(tǒng)需要針對以上類型語句進行解析,判斷實際操作影響行數(shù),根據(jù)設(shè)定閥值進行管控觸發(fā)。
3.3 核心思想及實現(xiàn)流程
針對批量操作語句,進行解析和重新組裝,根據(jù)語句中相關(guān)查詢條件,判斷該語句執(zhí)行后影響數(shù)據(jù)條目數(shù)。針對同類型操作,同操作對象,預(yù)先設(shè)定影響條目數(shù)上限閥值,一旦發(fā)現(xiàn)影響條目數(shù)超過閥值,則要求用戶進行操作授權(quán)申請。本系統(tǒng)核心功能流程如下:
(1)用戶通過plsql發(fā)送執(zhí)行sql語句;
(2)系統(tǒng)攔截該語句;
(3)系統(tǒng)對于該語句進行解析;
(4)系統(tǒng)判斷解析結(jié)果是否有攔截策略相匹配,如沒有,則放過該語句繼續(xù)執(zhí)行;
(5)如果有匹配策略,則獲取該語句執(zhí)行影響條數(shù);
(6)判斷影響條數(shù)是否超過策略定義的閥值,如未達到,則放過該語句繼續(xù)執(zhí)行;
(7)如超過,則提示用戶進行需要進行授權(quán)申請,申請未通過,則該語句被阻斷,并提示用戶;
(8)如申請通過,則該語句繼續(xù)執(zhí)行。
3.4 授權(quán)設(shè)定
對于觸發(fā)審批后,PLSQL界面彈出窗口提示用戶當(dāng)前操作必須獲取授權(quán)才能執(zhí)行,我們系統(tǒng)設(shè)計時可以考慮現(xiàn)場授權(quán)和遠程手機短信方式進行授權(quán)。
3.5 操作日志
對于數(shù)據(jù)庫操作日志,我們依托堡壘機的審計功能進行記錄
針對每次管控觸發(fā),提供授權(quán)日志,包括授權(quán)觸發(fā)、授權(quán)審批、授權(quán)結(jié)果等過程的操作人、操作時間、操作觸發(fā)控制點、審批人、審批結(jié)果等,都進行相關(guān)記錄。
4 結(jié)束語
通過以上的管控體系,有效地減少了批量操作失誤的概率,有效的保障企業(yè)信息系統(tǒng)的平穩(wěn)運行。但是系統(tǒng)不是萬能的,有再好的管控系統(tǒng)也可能會出現(xiàn)人為誤操作,對于核心數(shù)據(jù)的操作務(wù)必謹(jǐn)慎再謹(jǐn)慎,落實有方案、有審批、有備份、有復(fù)核、有審計的管理要求,才能有效的規(guī)避相關(guān)誤操作的發(fā)生,這才是最終的管理目標(biāo)。
參考文獻
[1](瑞士)Christian Antognini 著,童家旺 等譯.Oracle性能診斷藝術(shù)[M].北京:人民郵電出版社,2009.
[2]嚴(yán)冬梅 著,數(shù)據(jù)庫原理M].北京:清華大學(xué)出版社,2011.
作者單位
中國聯(lián)通廣西分公司 廣西壯族自治區(qū)南寧市 530028endprint
摘 要
有效的管控好數(shù)據(jù)庫操作員對后臺核心數(shù)據(jù)的批量操作,建立起批量數(shù)據(jù)操作的預(yù)判、授權(quán)、審計流程,可減少核心數(shù)據(jù)批量誤操作的概率,降低人為因素失誤造成企業(yè)核心數(shù)據(jù)破壞的風(fēng)險。本文研究如何利用現(xiàn)有的賬號權(quán)限審計管理系統(tǒng),通過引入數(shù)據(jù)庫批量操作語句管控的設(shè)計思想,提供一套有效的數(shù)據(jù)庫批量操作的管控體系。
【關(guān)鍵詞】數(shù)據(jù)庫 批量操作 管控體系
1 引言
隨著企業(yè)信息化建設(shè)程度不斷提高,信息系統(tǒng)的大量核心業(yè)務(wù)數(shù)據(jù)存放在各系統(tǒng)的后臺數(shù)據(jù)庫中。這些數(shù)據(jù)的日常維護大多是由系統(tǒng)管理和開發(fā)人員進行的。由于工作需求,他們都具備了直接訪問獲取和處理核心數(shù)據(jù)的權(quán)限。如果無法控制對于數(shù)據(jù)庫中核心數(shù)據(jù)的訪問行為,就有可能導(dǎo)致核心業(yè)務(wù)數(shù)據(jù)的泄露和破壞,直接影響到企業(yè)正常生產(chǎn)經(jīng)營,因此必須加強數(shù)據(jù)庫操作的管理。
根據(jù)維護經(jīng)驗,信息系統(tǒng)故障不少來至內(nèi)部人員的批量誤操作。俗話說得好:“事后控制不如事中控制,事中控制不如事前控制”,我們就是需要通過數(shù)據(jù)庫庫批量操作語句的管控設(shè)計,有效地降低操作員批量誤操作的風(fēng)險。
2 技術(shù)需求概述
數(shù)據(jù)庫操作語句中,批量操作語句由于能夠通過單條語句影響到多條數(shù)據(jù),尤其是update/insert/delete等,直接實現(xiàn)對于數(shù)據(jù)的批量修改、新增和刪除,需要具備專項管控手段,進行嚴(yán)格管控。通過設(shè)計數(shù)據(jù)庫批量操作語句管控系統(tǒng),可以在出現(xiàn)用戶使用批量操作語句進行數(shù)據(jù)庫操作時,及時發(fā)現(xiàn)并進行管控,保護數(shù)據(jù)庫核心數(shù)據(jù)安全。設(shè)計和實現(xiàn)目標(biāo)是:
(1)能夠攔截用戶的數(shù)據(jù)庫操作語句;
(2)能夠針對攔截到的語句進行語句分析,判斷是否匹配觸發(fā)規(guī)則;
(3)針對符合規(guī)則語句判斷其操作影響數(shù)據(jù)條數(shù),是否達到或超過管控閥值;
(4)針對達到管控閥值的語句能夠阻斷其執(zhí)行,并提示用戶進行授權(quán)申請;
(5)針對未達到管控閥值或未匹配觸發(fā)規(guī)則的語句直接放行,保證其能正常執(zhí)行;
(6)觸發(fā)規(guī)則、管控閥值可以由系統(tǒng)管理員通過系統(tǒng)提供界面進行設(shè)定;
(7)對于語句阻斷、用戶申請授權(quán)、語句授權(quán)通過執(zhí)行的過程能夠記錄完整日志,提供查詢。
3 體系架構(gòu)分析及設(shè)計
3.1 場景環(huán)境
現(xiàn)場已部署帳號權(quán)限審計管理的堡壘機系統(tǒng),用戶日常訪問數(shù)據(jù)庫都是使用部署在堡壘機上的數(shù)據(jù)庫客戶端訪問工具進行訪問。現(xiàn)場已接入管理數(shù)據(jù)庫資源類型主要是Oracle,使用配套訪問工具為PL/SQL Developer。
3.2 典型腳本分析
Oracle環(huán)境下常用的批量操作語句類型如下(暫只考慮Insert/Update/Delete三種典型類型):
(1)INSERT類型。
INSERT table1 values(v1, v2);
INSERT table1(c1,c2,c3) (select v1,v2,v3 from table2)
(2)UPDATE類型。
UPDATE table1 set col_na = v;
UPDATE table1 set col_na1 = v1 where col_na2 in (select col_na2 from table2 where col_na3 = v3);
UPDATE table1 set (col_na1, col_na2) = (select (col_na1, col_na2) from table2 where col_na3 = table1.col_na3) where table1.col_na4 = v;
(3)DELETE類型。
DELETE table1;
DELETE from table1 where col_na in (select col_na from table2 where col_na = v);
由于根據(jù)本系統(tǒng)需求特性,只需要判斷最外層操作影響范圍,對于復(fù)雜嵌套語句,皆可歸并為以上實例類型。系統(tǒng)需要針對以上類型語句進行解析,判斷實際操作影響行數(shù),根據(jù)設(shè)定閥值進行管控觸發(fā)。
3.3 核心思想及實現(xiàn)流程
針對批量操作語句,進行解析和重新組裝,根據(jù)語句中相關(guān)查詢條件,判斷該語句執(zhí)行后影響數(shù)據(jù)條目數(shù)。針對同類型操作,同操作對象,預(yù)先設(shè)定影響條目數(shù)上限閥值,一旦發(fā)現(xiàn)影響條目數(shù)超過閥值,則要求用戶進行操作授權(quán)申請。本系統(tǒng)核心功能流程如下:
(1)用戶通過plsql發(fā)送執(zhí)行sql語句;
(2)系統(tǒng)攔截該語句;
(3)系統(tǒng)對于該語句進行解析;
(4)系統(tǒng)判斷解析結(jié)果是否有攔截策略相匹配,如沒有,則放過該語句繼續(xù)執(zhí)行;
(5)如果有匹配策略,則獲取該語句執(zhí)行影響條數(shù);
(6)判斷影響條數(shù)是否超過策略定義的閥值,如未達到,則放過該語句繼續(xù)執(zhí)行;
(7)如超過,則提示用戶進行需要進行授權(quán)申請,申請未通過,則該語句被阻斷,并提示用戶;
(8)如申請通過,則該語句繼續(xù)執(zhí)行。
3.4 授權(quán)設(shè)定
對于觸發(fā)審批后,PLSQL界面彈出窗口提示用戶當(dāng)前操作必須獲取授權(quán)才能執(zhí)行,我們系統(tǒng)設(shè)計時可以考慮現(xiàn)場授權(quán)和遠程手機短信方式進行授權(quán)。
3.5 操作日志
對于數(shù)據(jù)庫操作日志,我們依托堡壘機的審計功能進行記錄
針對每次管控觸發(fā),提供授權(quán)日志,包括授權(quán)觸發(fā)、授權(quán)審批、授權(quán)結(jié)果等過程的操作人、操作時間、操作觸發(fā)控制點、審批人、審批結(jié)果等,都進行相關(guān)記錄。
4 結(jié)束語
通過以上的管控體系,有效地減少了批量操作失誤的概率,有效的保障企業(yè)信息系統(tǒng)的平穩(wěn)運行。但是系統(tǒng)不是萬能的,有再好的管控系統(tǒng)也可能會出現(xiàn)人為誤操作,對于核心數(shù)據(jù)的操作務(wù)必謹(jǐn)慎再謹(jǐn)慎,落實有方案、有審批、有備份、有復(fù)核、有審計的管理要求,才能有效的規(guī)避相關(guān)誤操作的發(fā)生,這才是最終的管理目標(biāo)。
參考文獻
[1](瑞士)Christian Antognini 著,童家旺 等譯.Oracle性能診斷藝術(shù)[M].北京:人民郵電出版社,2009.
[2]嚴(yán)冬梅 著,數(shù)據(jù)庫原理M].北京:清華大學(xué)出版社,2011.
作者單位
中國聯(lián)通廣西分公司 廣西壯族自治區(qū)南寧市 530028endprint