欧美乱码精品一区二区三区,风流少妇又紧又爽又丰满,被债主在夫面前人妻被强,国产精品视频永久免费观看

?
內(nèi)容中心
按關(guān)鍵字查找
數(shù)據(jù)庫安全審計技術(shù)之參數(shù)化語句審計(1)
作者:安華金和 發(fā)布時間:2017-02-03

數(shù)據(jù)庫安全審計是目前使用最為廣泛的數(shù)據(jù)庫安全技術(shù),也正因此,用戶對此項技術(shù)提出了更高的要求。影響審計結(jié)果準(zhǔn)確性的因素有很多,其中對參數(shù)化語句的精確審計是其中一個難點。 

參數(shù)綁定是數(shù)據(jù)庫編程中常用的一種方法,通過這種方法,數(shù)據(jù)庫系統(tǒng)可以減少編譯次數(shù),快速執(zhí)行,提升效率,但在筆者所見到的若干數(shù)據(jù)庫審計產(chǎn)品中,在這種情況下都出了不少的錯誤。有的是漏審了語句,有的是記錄下了操作的語句,但將具體執(zhí)行時所使用的參數(shù)記錯或漏記了。

為了詳解這種情況,我們來看一下參數(shù)綁定的基本概念。我們在常規(guī)的圖形化或命令行工具中,往往都是直接寫上SQL語句,比如:

Select * from person_info where id=’12XXXXX6722’;


在這里查詢條件是身份證號碼。根據(jù)身份證號碼查詢個人信息,是一種常用功能,也是會重復(fù)使用的語句,為了提升效率,編程中可以這么寫:

String sql1=’Select * from person_info where id=?;’

PreparedStatement pStmt = testConn.getConnection().prepareStatement(sql);

pStmt.setInt(1, ’12XXXXX6722’);

pStmt.execute();


下一次再使用時,就不用再發(fā)送語句了,可以直接發(fā)送:

pStmt.setInt(1, ’22XXXXX5399’);

pStmt.execute();


對于數(shù)據(jù)庫審計系統(tǒng)而言,單純地記錄下來‘Select * from person_info where id=?’是存在缺陷的,因為你無法明確額操作人員到底訪問了哪個用戶的信息,必須明確下來具體的參數(shù)才行。

這就要求將設(shè)定的參數(shù),與Prepare的語句有效的關(guān)聯(lián),形成可視化的審計記錄展現(xiàn):

Select * from person_info where id=’12XXXXX6722’;

Select * from person_info where id=’22XXXXX5399’;


這實際上要求審計系統(tǒng)比起單純的記錄語句要完成更多的工作;其中一個重要任務(wù)的就是句柄追蹤,本質(zhì)上SQL語句的執(zhí)行過程追蹤就是句柄追蹤過程。在上面顯示的例子中,pStmt.execute(),在通訊過程中并不發(fā)送具體的語句,而僅是告知服務(wù)器要執(zhí)行哪個語句句柄,服務(wù)器端會根據(jù)內(nèi)部記錄的句柄所對應(yīng)的已經(jīng)編譯完成的SQL語句的執(zhí)行計劃,進(jìn)行語句執(zhí)行。數(shù)據(jù)庫審計要完成相應(yīng)的工作,需要執(zhí)行類似的過程,在系統(tǒng)的內(nèi)部也維護(hù)這樣的映射關(guān)系;同時由于大多數(shù)數(shù)據(jù)庫的句柄,是在會話級的,句柄是可重用的,因此在數(shù)據(jù)庫審計中還要有效地維護(hù)句柄與session的關(guān)聯(lián),以及句柄的消亡。

在句柄維護(hù)之外,另一個有挑戰(zhàn)的工作就是參數(shù)的還原。參數(shù)的還原,首要的是要明確參數(shù)所對應(yīng)的句柄;在調(diào)用pStmt.setInt(1, ’22XXXXX5399’)時,在網(wǎng)絡(luò)中發(fā)送的包,會標(biāo)明這個參數(shù)是針對哪個句柄的,是針對第幾個參數(shù)的。作為數(shù)據(jù)庫審計產(chǎn)品,需要將參數(shù)與語句進(jìn)行映射;更重要地要準(zhǔn)確地填回參數(shù)所在的位置。

上面的例子只是為了說明概念,舉了最簡單的示例,實際情況中參數(shù)的綁定情況遠(yuǎn)比這個復(fù)雜。我么將在后面的文章中展示相對復(fù)雜的實際示例,并詳細(xì)說明數(shù)據(jù)庫安全審計技術(shù)對各類參數(shù)化語句的解析原理,能夠更實際的看到數(shù)據(jù)庫審計結(jié)果的準(zhǔn)確度差異。


?
弥勒县| 岐山县| 时尚| 三台县| 炉霍县| 通江县| 肇东市| 新邵县| 中江县| 樟树市| 巍山| 永春县| 连平县| 万州区| 曲水县| 宣城市| 砚山县| 乌拉特前旗| 崇仁县| 沾益县| 克拉玛依市| 韩城市| 突泉县| 广州市| 儋州市| 威海市| 滨州市| 广宗县| 贵德县| 襄樊市| 怀集县| 井研县| 云南省| 西平县| 平江县| 侯马市| 揭西县| 吐鲁番市| 新乡市| 连平县| 清镇市|