999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于WEB數(shù)據(jù)庫(kù)安全的訪(fǎng)問(wèn)技術(shù)

2009-05-29 04:32:18
網(wǎng)絡(luò)與信息 2009年5期

白 斌

摘要:為了增強(qiáng)WEB數(shù)據(jù)庫(kù)的安全,本文主要介紹了通過(guò)QDBC安全訪(fǎng)問(wèn)接口的設(shè)計(jì)與實(shí)現(xiàn),在基于關(guān)系數(shù)據(jù)庫(kù)的安全增強(qiáng)器中對(duì)標(biāo)準(zhǔn)ODBC訪(fǎng)問(wèn)接口做了擴(kuò)充。

關(guān)鍵詞:WEB數(shù)據(jù)庫(kù);ODBC;安全增強(qiáng)器

1引言

在網(wǎng)絡(luò)發(fā)展的早期。由于用戶(hù)對(duì)安全還不是很重視,原來(lái)數(shù)據(jù)庫(kù)的結(jié)構(gòu)是客戶(hù)機(jī)ODBC-數(shù)據(jù)庫(kù)服務(wù)器3層體系結(jié)構(gòu)。隨著現(xiàn)代網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)服務(wù)器數(shù)據(jù)庫(kù)安全越來(lái)越重要,為了提升網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的安全,本文提出從客戶(hù)機(jī) -ODBC一安全增強(qiáng)器一數(shù)據(jù)庫(kù)服務(wù)器這樣的一個(gè)4層結(jié)構(gòu)。使得所有使用ODBC訪(fǎng)問(wèn)接口的應(yīng)用系統(tǒng)對(duì)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)操作都將首先被提交給安全增強(qiáng)器接受安全檢查,只有檢查通過(guò)后才能訪(fǎng)問(wèn)后臺(tái)的RDBMS。考慮到目前在國(guó)內(nèi)流行的RDBMS如Oracle等都僅只有C2級(jí)的安全,在安全增強(qiáng)系統(tǒng)中實(shí)現(xiàn)的安全模塊只需提供強(qiáng)制訪(fǎng)問(wèn)控制(MAC)和B1級(jí)所要求的擴(kuò)充審計(jì)功能,就可以將原來(lái)只具有C2級(jí)安全的數(shù)據(jù)庫(kù)管理系統(tǒng)的安全性能增強(qiáng)到B1級(jí),從而可以滿(mǎn)足對(duì)數(shù)據(jù)安全要求較高領(lǐng)域的應(yīng)用需要。由于對(duì)安全模塊的操作需要有一個(gè)擴(kuò)充的數(shù)據(jù)安全子語(yǔ)言,而標(biāo)準(zhǔn)的ODBC并不具備處理該語(yǔ)言的能力,因此需要對(duì)ODBC所使用的SOL語(yǔ)言進(jìn)行適當(dāng)?shù)臄U(kuò)充,以增加對(duì)安全操作命令的處理能力。

2WEB數(shù)據(jù)庫(kù)安全性的內(nèi)容

WEB數(shù)據(jù)庫(kù)的安全性包括:機(jī)密性、完整性和可用性,數(shù)據(jù)庫(kù)在3個(gè)層次上的異構(gòu),客戶(hù)機(jī)、服務(wù)器通過(guò)開(kāi)放的網(wǎng)絡(luò)環(huán)境,跨不同硬件和軟件平臺(tái)通信,數(shù)據(jù)庫(kù)安全問(wèn)題在異構(gòu)環(huán)境下變得更加復(fù)雜。而且異構(gòu)環(huán)境的系統(tǒng)具有可擴(kuò)展性。能管理分布或聯(lián)邦數(shù)據(jù)庫(kù)環(huán)境,每個(gè)節(jié)點(diǎn)服務(wù)器還能自治實(shí)行集中式安全管理和訪(fǎng)問(wèn)控制,對(duì)自己創(chuàng)建的用戶(hù)、規(guī)則、客體進(jìn)行安全管理。如:由DBA或安全管理員執(zhí)行本部門(mén)、本地區(qū)或整體的安全策略,授權(quán)特定的管理員管理各組應(yīng)用程序、用戶(hù)、規(guī)則和數(shù)據(jù)庫(kù)。因此訪(fǎng)問(wèn)控制和安全管理尤為重要a異構(gòu)環(huán)境的數(shù)據(jù)庫(kù)安全策略有:全局范圍的身份驗(yàn)證;全局的訪(fǎng)問(wèn)控制,以支持各類(lèi)局部訪(fǎng)問(wèn)控制(自主和強(qiáng)制訪(fǎng)問(wèn)控制):全局完整性控制;網(wǎng)絡(luò)安全管理,包括網(wǎng)絡(luò)信息加密、網(wǎng)絡(luò)入侵防護(hù)和檢測(cè)等。

3WEB數(shù)據(jù)庫(kù)的安全增強(qiáng)器基本原理

在當(dāng)前,數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)和關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)之間的交互—般都是采用典型的客戶(hù)機(jī),服務(wù)器(C/S)結(jié)構(gòu),通過(guò)ODBC(Open Database Connectivity)來(lái)進(jìn)行的。其中應(yīng)用系統(tǒng)和ODBC驅(qū)動(dòng)程序管理器放在客戶(hù)機(jī)上,提出對(duì)數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)的請(qǐng)求,而RDBMS放在后臺(tái)服務(wù)器上,提供服務(wù),ODBC通過(guò)網(wǎng)絡(luò)傳輸負(fù)責(zé)這兩者之間的訪(fǎng)問(wèn)命令和結(jié)果數(shù)據(jù)的交互。由此看出,如果能夠截獲應(yīng)用系統(tǒng)通過(guò)ODBC發(fā)送到數(shù)據(jù)庫(kù)服務(wù)器的訪(fǎng)問(wèn)命令,就可以在ODBC和第三方的RDBMS之間加入我們提供的安全模塊,以達(dá)到增強(qiáng)數(shù)據(jù)庫(kù)系統(tǒng)的安全功能的目的。目前的數(shù)據(jù)庫(kù)系統(tǒng)具有3種標(biāo)準(zhǔn)形式的網(wǎng)絡(luò)訪(fǎng)問(wèn)接口:ODBC接口、JDBC接口和專(zhuān)用接口,而目前大部分應(yīng)用程序約90%以上均使用ODBC接口來(lái)連接后臺(tái)數(shù)據(jù)庫(kù)。

基于上述設(shè)計(jì)思想,一個(gè)通用RDBMS的安全增強(qiáng)器主要由3部分內(nèi)容組成:

(1)ODBG接口:該接口是連接客戶(hù)端軟件與后臺(tái)RDBMS的標(biāo)準(zhǔn)接口,通過(guò)網(wǎng)絡(luò)傳輸負(fù)責(zé)維護(hù)這兩者之間命令和數(shù)據(jù)的交互。

(2)安全模塊:該模塊實(shí)現(xiàn)強(qiáng)制訪(fǎng)問(wèn)控制檢查及安全審計(jì)功能,ODBC將客戶(hù)端應(yīng)用的SQL訪(fǎng)問(wèn)請(qǐng)求傳送到服務(wù)器端后,由安全模塊負(fù)責(zé)對(duì)SQL語(yǔ)句執(zhí)行安全檢查,只有在主體和客體的安全級(jí)別符合規(guī)定的訪(fǎng)問(wèn)要求后才能進(jìn)入RDBMS進(jìn)行相應(yīng)操作。同時(shí)安全模塊還將負(fù)責(zé)此次訪(fǎng)問(wèn)的安全審計(jì)工作。

(3)與RDBMS的接口模塊:該模塊負(fù)責(zé)將經(jīng)過(guò)安全檢查的SQL語(yǔ)句轉(zhuǎn)換成RDBMS的標(biāo)準(zhǔn)語(yǔ)句并進(jìn)入數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的訪(fǎng)問(wèn)操作。為了確保應(yīng)用系統(tǒng)-ODBC-安全模塊一數(shù)據(jù)庫(kù)服務(wù)器訪(fǎng)問(wèn)通道的封閉,與RDBMS的接口模塊采用的是后臺(tái)數(shù)據(jù)庫(kù)的非網(wǎng)絡(luò)訪(fǎng)問(wèn)接口,并封閉其原有的網(wǎng)絡(luò)訪(fǎng)問(wèn)接口。

4ODBC的結(jié)構(gòu)及主要內(nèi)容

ODBC的4個(gè)組成部分:應(yīng)用程序、驅(qū)動(dòng)程序管理器、驅(qū)動(dòng)程序、數(shù)據(jù)源以及每部分的功能。ODBC驅(qū)動(dòng)程序是Microsoft推出的訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的統(tǒng)一接口。這個(gè)接口提供了最大限度的互操作性,每一種對(duì)應(yīng)某種DBMS的拓?fù)浣Y(jié)構(gòu),它們分別是一級(jí)驅(qū)動(dòng)器、二級(jí)驅(qū)動(dòng)器、三級(jí)及多級(jí)驅(qū)動(dòng)器。一級(jí)驅(qū)動(dòng)器可以說(shuō)是一種單機(jī)結(jié)構(gòu),數(shù)據(jù)庫(kù)和驅(qū)動(dòng)器放在同一臺(tái)機(jī)器中,其程序設(shè)計(jì)接口由文件I/O構(gòu)成,如Access、Foxpro、dBase等。二級(jí)驅(qū)動(dòng)器就是目前流行的客戶(hù)/服務(wù)器系統(tǒng),如Oracle、Sybase、SQL Serve等。三級(jí)驅(qū)動(dòng)器就是在二級(jí)驅(qū)動(dòng)器的客戶(hù)和服務(wù)器之間增加一個(gè)網(wǎng)關(guān)服務(wù)器,而這個(gè)網(wǎng)關(guān)服務(wù)器可以與多個(gè)DBMS相連,而網(wǎng)關(guān)服務(wù)器將用戶(hù)的請(qǐng)求加載適當(dāng)?shù)腛DBC驅(qū)動(dòng)器后發(fā)送到相應(yīng)的數(shù)據(jù)庫(kù)服務(wù)器上。考慮到目前的需要,在基于RDBMS的安全增強(qiáng)器中,ODBC的實(shí)現(xiàn)采用二級(jí)驅(qū)動(dòng)器方式。

在基于RDBMS的安全增強(qiáng)器中,為了保證整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的安全性,要求安全模塊本身就構(gòu)成一個(gè)安全子系統(tǒng),即安全模塊的操作命令也必須受到強(qiáng)制訪(fǎng)問(wèn)控制的檢查和進(jìn)行安全審計(jì)。這就要求OD8C能夠處理數(shù)據(jù)安全子語(yǔ)言的訪(fǎng)問(wèn)命令,但是在ODBC的標(biāo)準(zhǔn)規(guī)范中。只有對(duì)標(biāo)準(zhǔn)SQL語(yǔ)句的操作,并沒(méi)有包含任何有關(guān)B1級(jí)安全的命令函數(shù),因此必須在ODBC許可的范圍內(nèi)對(duì)ODBC進(jìn)行適當(dāng)?shù)臄U(kuò)展,以增加對(duì)數(shù)據(jù)安全子語(yǔ)言的處理能力。使得任何對(duì)安全模塊的操作命令都必須經(jīng)由ODBC發(fā)送到安全模塊,以達(dá)到增強(qiáng)系統(tǒng)安全的目的。

為提供對(duì)安全模塊的操作與管理,對(duì)標(biāo)準(zhǔn)ODBCSOL語(yǔ)言的語(yǔ)法成分進(jìn)行了如下擴(kuò)充:

(1)層次等級(jí)的創(chuàng)建與刪除;

(2)范疇的創(chuàng)建與刪除;

(3)客體的標(biāo)識(shí)、修改、刪除;

(4)代理的標(biāo)識(shí)、修改,刪除;

(5)主體的標(biāo)識(shí)、修改、刪除;

(6)特權(quán)的授予與回收;

(7)MAC的啟動(dòng)與關(guān)閉;

(8)安全信息瀏覽;

(9)設(shè)置安全管理員口令;

(10)審計(jì)的啟動(dòng)與關(guān)閉;

(11)安全審計(jì)選項(xiàng)的設(shè)置與撤消;

(12)審計(jì)報(bào)警的打開(kāi)與關(guān)閉;

(13)審計(jì)信息的瀏覽與刪除;

(14)設(shè)置審計(jì)員口令。

5ODBC的設(shè)計(jì)與實(shí)現(xiàn)

基于RDBMS的安全增強(qiáng)系統(tǒng)中的ODBC的實(shí)現(xiàn)采用目前比較常用的Cllent/Server體系結(jié)構(gòu),主要包括客戶(hù)端和服務(wù)器端的實(shí)現(xiàn)。從ODBC要實(shí)現(xiàn)的函數(shù)的內(nèi)容來(lái)看。不僅包括常見(jiàn)的數(shù)據(jù)定義和數(shù)據(jù)操縱命令,還包括安全操作命令和數(shù)據(jù)字典

訪(fǎng)問(wèn)命令,在數(shù)據(jù)庫(kù)服務(wù)器端需要調(diào)用不同的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)函數(shù)。

5.1客戶(hù)端的設(shè)計(jì)與實(shí)現(xiàn)

客戶(hù)端主要是根據(jù)ODBC V3.0的規(guī)范來(lái)提供一個(gè)標(biāo)準(zhǔn)統(tǒng)一的用戶(hù)接口,使得具體的實(shí)現(xiàn)對(duì)用戶(hù)來(lái)說(shuō)是透明的。在客戶(hù)端主要包括3個(gè)句柄:

(1)環(huán)境句柄HENV:為全程信息標(biāo)識(shí)內(nèi)存存儲(chǔ)。包括有效鏈接句柄和當(dāng)前活動(dòng)連接句柄并維護(hù)有關(guān)環(huán)境的錯(cuò)誤集:

(2)鏈接句柄HDBC:為特定鏈接的信息標(biāo)識(shí)內(nèi)存存儲(chǔ),每個(gè)鏈接句柄與環(huán)境句柄有關(guān)。存放本次鏈接的必要信息,包括網(wǎng)絡(luò)連接的信息和維護(hù)有關(guān)連接的錯(cuò)誤集:

(3)語(yǔ)句句柄HSTMT:為SQL語(yǔ)句信息標(biāo)識(shí)內(nèi)存存儲(chǔ)。用于存放每次操作的相美信息,以及返回的結(jié)果集和有關(guān)語(yǔ)句的錯(cuò)誤集。一個(gè)語(yǔ)句句柄必須與一個(gè)連接句柄相連,但一個(gè)連接句柄上可以有多個(gè)語(yǔ)句句柄。客戶(hù)端就是通過(guò)這3個(gè)訇柄來(lái)維護(hù)用戶(hù)的訪(fǎng)問(wèn)信息的。

5.2服務(wù)器端的設(shè)計(jì)與實(shí)現(xiàn)

在網(wǎng)絡(luò)環(huán)境下,用戶(hù)對(duì)數(shù)據(jù)庫(kù)的訪(fǎng)問(wèn)量可能高于在單機(jī)環(huán)境下訪(fǎng)問(wèn)的幾個(gè)數(shù)量級(jí)。而且在同一時(shí)刻會(huì)有多個(gè)用戶(hù)對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪(fǎng)問(wèn),這就要求服務(wù)器端能夠并發(fā)地處理用戶(hù)的訪(fǎng)問(wèn)請(qǐng)求。在接口的具體實(shí)現(xiàn)中,我們借助于操作系統(tǒng)的多任務(wù)多線(xiàn)程的特性,以實(shí)現(xiàn)多用戶(hù)的數(shù)據(jù)庫(kù)并發(fā)訪(fǎng)問(wèn)操作。在數(shù)據(jù)庫(kù)服務(wù)器啟動(dòng)后將首先產(chǎn)生一個(gè)主線(xiàn)程,通過(guò)它再創(chuàng)建其他的服務(wù)線(xiàn)程。服務(wù)器端在接收到一次連接請(qǐng)求后都派生出一個(gè)線(xiàn)程來(lái)處理這次連接中的所有操作。而數(shù)據(jù)庫(kù)內(nèi)部的并發(fā)控制由后臺(tái)的RDBMS來(lái)負(fù)責(zé)維護(hù)。線(xiàn)程產(chǎn)生后,就開(kāi)始監(jiān)聽(tīng)網(wǎng)絡(luò),當(dāng)它從網(wǎng)絡(luò)上接收到請(qǐng)求時(shí),首先進(jìn)入語(yǔ)法分析模塊,對(duì)于MAC管理語(yǔ)句和審計(jì)管理語(yǔ)句,將分別進(jìn)入MAC管理模塊和審計(jì)管理模塊;對(duì)于SQL請(qǐng)求,則進(jìn)入安全模塊進(jìn)行安全檢查,如果安全檢查不能通過(guò),則進(jìn)行相應(yīng)的處理并返回錯(cuò)誤,否則將調(diào)用RDBMS的API函數(shù)進(jìn)行處理,并將執(zhí)行的結(jié)果發(fā)回客戶(hù)端。在同一時(shí)間內(nèi)。服務(wù)器端可以派生出多個(gè)線(xiàn)程進(jìn)行并發(fā)操作。

6ODBC在安全增強(qiáng)系統(tǒng)中的應(yīng)用

利用上述ODBC研究成果。我們實(shí)現(xiàn)了一個(gè)基于Oracle數(shù)據(jù)庫(kù)系統(tǒng)的安全增強(qiáng)系統(tǒng),并利用該安全增強(qiáng)系統(tǒng)對(duì)我們自主實(shí)現(xiàn)的ODBC訪(fǎng)問(wèn)接口進(jìn)行了功能測(cè)試和性能測(cè)試。

整個(gè)測(cè)試采用1999年江蘇省的網(wǎng)上招生系統(tǒng),該系統(tǒng)共定義了基表38個(gè)、視圖30個(gè)、存儲(chǔ)過(guò)程10個(gè),測(cè)試數(shù)據(jù)量總共在40萬(wàn)條記錄左右。在對(duì)ODBC的功能測(cè)試中一共選取了85個(gè)例子,分為兩個(gè)部分:一是按照QDBC的標(biāo)準(zhǔn)對(duì)ODBC函數(shù)進(jìn)行測(cè)試(70個(gè)例子);二是進(jìn)行應(yīng)用綜合測(cè)試(15個(gè)例子)。測(cè)試用例共使用了61個(gè)ODBC函數(shù),對(duì)所有ODBC v3.0調(diào)用函數(shù)都進(jìn)行了測(cè)試,測(cè)試結(jié)果表明系統(tǒng)功能完全符合ODBCV3.0的要求。

我們利用Oracle數(shù)據(jù)庫(kù)及其專(zhuān)用的ODBC訪(fǎng)問(wèn)接口進(jìn)行了性能對(duì)比測(cè)試。首先利用Oracle數(shù)據(jù)庫(kù)的專(zhuān)用ODBC訪(fǎng)問(wèn)接口直接訪(fǎng)問(wèn)Qracle數(shù)據(jù)庫(kù),然后再使用我們實(shí)現(xiàn)的ODBC接口通過(guò)安全增強(qiáng)系統(tǒng)訪(fǎng)問(wèn)O-racle數(shù)據(jù)庫(kù),記錄在每次運(yùn)行過(guò)程中,從應(yīng)用程序發(fā)出一條SQL訪(fǎng)問(wèn)命令開(kāi)始,一直到獲取該次訪(fǎng)問(wèn)的執(zhí)行結(jié)果所需的執(zhí)行時(shí)間。在測(cè)試過(guò)程中共選取了15個(gè)應(yīng)用例子,每個(gè)例子執(zhí)行3次。經(jīng)過(guò)測(cè)試使用安全增強(qiáng)器時(shí)整個(gè)系統(tǒng)的效率僅下降5%左右。

7小結(jié)

本文通過(guò)擴(kuò)展ODBC所采用的標(biāo)準(zhǔn)SQL語(yǔ)法成分的方法,使得該ODBC實(shí)現(xiàn)系統(tǒng)可以支持對(duì)數(shù)據(jù)安全子語(yǔ)言命令的處理,從而使得由ODBC、安全模塊、RDBMS接口模塊和后臺(tái)RDBMS可以構(gòu)成一個(gè)安全的數(shù)據(jù)庫(kù)系統(tǒng)。但是ODBC僅是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)在客戶(hù)/服務(wù)器方式下的一個(gè)網(wǎng)絡(luò)訪(fǎng)問(wèn)接口,無(wú)法實(shí)現(xiàn)在Internet環(huán)境中應(yīng)用程序?qū)?shù)據(jù)庫(kù)服務(wù)器的直接訪(fǎng)問(wèn)操作,因此盡快實(shí)現(xiàn)一個(gè)具有自主知識(shí)產(chǎn)權(quán)的JDBC數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)接口,并實(shí)現(xiàn)對(duì)上述數(shù)據(jù)安全子語(yǔ)言的支持,以構(gòu)建一個(gè)Internet環(huán)境中的安全數(shù)據(jù)庫(kù)系統(tǒng)將是我們今后進(jìn)一步的研究工作。

主站蜘蛛池模板: 欧美日韩精品一区二区视频| 伊人AV天堂| 中文字幕久久波多野结衣| 1769国产精品免费视频| 国产乱子伦手机在线| 亚洲成综合人影院在院播放| 国产精品三级av及在线观看| 午夜激情婷婷| 中文成人无码国产亚洲| 在线欧美国产| 欧美亚洲国产视频| 香蕉在线视频网站| 538国产视频| 99色亚洲国产精品11p| 国产精品原创不卡在线| 香蕉精品在线| 一级毛片免费播放视频| 丝袜亚洲综合| 毛片三级在线观看| 成人日韩视频| 91在线丝袜| 国产一区二区网站| 暴力调教一区二区三区| 国产成人1024精品| 欧美精品成人一区二区在线观看| 久久国语对白| 成人精品在线观看| 欧美a√在线| 亚洲精品天堂自在久久77| 亚洲国产精品日韩欧美一区| 久久99精品久久久久纯品| 亚洲第一区在线| 国产在线精品美女观看| 亚洲人成人伊人成综合网无码| 亚洲色图另类| www.99在线观看| 强奷白丝美女在线观看| 国产91透明丝袜美腿在线| 亚洲AV无码久久天堂| 97av视频在线观看| 污污网站在线观看| 热思思久久免费视频| 99国产精品国产高清一区二区| 99在线视频免费| 国产微拍精品| 欧美激情视频二区| 熟女成人国产精品视频| 欧美性精品| 天天摸天天操免费播放小视频| 色哟哟国产成人精品| 黄色a一级视频| 国产成人精品一区二区| 国产免费怡红院视频| 国产剧情伊人| 国产视频一二三区| 国产一级特黄aa级特黄裸毛片| 成人毛片免费观看| 亚洲一区二区日韩欧美gif| 伊人成人在线| 特级精品毛片免费观看| 久久久91人妻无码精品蜜桃HD| 国产毛片久久国产| 欧美午夜在线观看| swag国产精品| 无码福利日韩神码福利片| 久久国产精品电影| 欧美精品高清| 永久免费无码日韩视频| 日本午夜网站| 国产一区二区三区在线观看免费| 国产高清不卡视频| 国产精品一区在线麻豆| 日韩国产高清无码| 国产精品福利尤物youwu| 尤物精品视频一区二区三区| 国产精品成人AⅤ在线一二三四 | 在线观看亚洲天堂| 国产一级二级在线观看| 国产精品福利导航| 香蕉久人久人青草青草| 亚洲天堂.com| 国产视频你懂得|