專利名稱:一種數(shù)據(jù)庫保密結(jié)構(gòu)及其使用方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)庫保密結(jié)構(gòu)和該數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法。
背景技術(shù):
數(shù)據(jù)庫開發(fā)中,為了方便對數(shù)據(jù)庫中數(shù)據(jù)的操作,往往把數(shù)據(jù)中的表、字段的名稱定義成便于理解的符號;另外,數(shù)據(jù)庫開發(fā)中,一般都提供了數(shù)據(jù)庫的備份功能,這些備份基本上都是調(diào)用數(shù)據(jù)庫管理系統(tǒng)提供的備份功能,而數(shù)據(jù)庫管理系統(tǒng)本身提供的備份大都對數(shù)據(jù)庫結(jié)構(gòu)沒有任何保護措施。
無論上述哪一種方式的存在,都為別人盜用數(shù)據(jù)庫資源提供了方便,數(shù)據(jù)庫的設(shè)計思想會被別人輕易復(fù)制,分析原因如下1.數(shù)據(jù)庫中明顯的表、字段名稱,符合常人思維,盜用者可以輕而易舉地理解到數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計思想;2.不加密的數(shù)據(jù)庫備份,只要做相同的模擬環(huán)境,很輕易就能對備份數(shù)據(jù)進行恢復(fù),從而進行分析。
發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有技術(shù)中數(shù)據(jù)庫容易被人盜用的技術(shù)問題,提供一種數(shù)據(jù)庫保密結(jié)構(gòu)。
本發(fā)明的另一目的是提供一種數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法。
本發(fā)明提出的數(shù)據(jù)庫保密結(jié)構(gòu)包括一數(shù)據(jù)庫系統(tǒng)及至少一個數(shù)據(jù)庫映射關(guān)系模塊,所述的數(shù)據(jù)庫系統(tǒng)包括一真實數(shù)據(jù)庫和至少一個虛擬數(shù)據(jù)庫,虛擬數(shù)據(jù)庫通過數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對真實數(shù)據(jù)庫中的業(yè)務(wù)數(shù)據(jù)進行管理。數(shù)據(jù)庫映射關(guān)系模塊用于對真實數(shù)據(jù)庫、虛擬數(shù)據(jù)庫的結(jié)構(gòu)和它們之間的映射關(guān)系進行初始化和維護。
本發(fā)明還提出了一種數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,所述的數(shù)據(jù)庫保密結(jié)構(gòu)包括一數(shù)據(jù)庫系統(tǒng)及至少一個數(shù)據(jù)庫映射關(guān)系模塊,所述的數(shù)據(jù)庫系統(tǒng)包括一真實數(shù)據(jù)庫和至少一個虛擬數(shù)據(jù)庫,所述數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法包括對真實數(shù)據(jù)庫和虛擬數(shù)據(jù)庫進行初始化的步驟,使得真實數(shù)據(jù)庫存放真實的業(yè)務(wù)數(shù)據(jù),虛擬數(shù)據(jù)庫存放從真實數(shù)據(jù)庫映射過來的視圖語法以及存儲過程的語法。
在所述數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法中,初始化的步驟具體如下
a.設(shè)數(shù)據(jù)結(jié)構(gòu)中的表名稱、字段名稱、字段類型及存儲過程的集合為集合M;b.運行數(shù)據(jù)庫映射關(guān)系模塊,輸入集合M和設(shè)定參數(shù),編制出與集合M一一對應(yīng)的沒有實際意義的若干組集合M’,保存這些對應(yīng)關(guān)系于一張?zhí)厥獾慕?jīng)過加密處理的表或文件中;c.用其中一組M’創(chuàng)建數(shù)據(jù)庫D2,同時創(chuàng)建至少一個虛擬數(shù)據(jù)庫D1,虛擬數(shù)據(jù)庫D1中創(chuàng)建一張維護表T,T中存放集合M中表名稱及從數(shù)據(jù)庫D2中集合M’對應(yīng)映射過來的與集合M中表名、列名均相同的視圖創(chuàng)建語法和集合M中存儲過程的名稱及語法。
所述數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,還包括對數(shù)據(jù)庫結(jié)構(gòu)關(guān)系進行維護的步驟,該步驟具體如下a.輸入集合M1和新的參數(shù),運行數(shù)據(jù)庫映射關(guān)系模塊,生成新的集合M’;b.根據(jù)集合M’的一組創(chuàng)建系列新表,對應(yīng)將原集合M’系列表數(shù)據(jù)導(dǎo)入到新的集合M’系列表中,刪除原集合M’系列表,同時重新維護存放集合M、M’關(guān)系的表或者文件。
本發(fā)明對數(shù)據(jù)庫進行操作時,按下列步驟進行a.進行數(shù)據(jù)庫訪問時,客戶端啟動數(shù)據(jù)庫操作申請模塊,向數(shù)據(jù)庫監(jiān)控模塊申請要訪問的數(shù)據(jù)庫資源;b.數(shù)據(jù)庫監(jiān)控模塊收到申請后,對要訪問的數(shù)據(jù)庫資源進行維護,并返回給數(shù)據(jù)庫操作申請模塊該資源申請成功與否的狀態(tài)標(biāo)志;c.數(shù)據(jù)庫操作申請模塊收到資源申請成功的標(biāo)志后,反饋給客戶端,客戶端通過這些資源操作數(shù)據(jù);d.客戶端操作數(shù)據(jù)完成后,通過數(shù)據(jù)庫操作申請模塊向數(shù)據(jù)庫監(jiān)控模塊發(fā)送資源使用完成的信號;e.數(shù)據(jù)庫監(jiān)控模塊接到資源使用完成信號后,對上述資源進行再維護。
所述的虛擬數(shù)據(jù)庫D1可以為多個,對應(yīng)的數(shù)據(jù)庫映射關(guān)系模塊也為多個。在本發(fā)明的一個較佳實施例中,設(shè)置了二個虛擬數(shù)據(jù)庫和二個數(shù)據(jù)庫映射關(guān)系模塊,此時,第一虛擬數(shù)據(jù)庫可以通過第一數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對真實數(shù)據(jù)庫中的業(yè)務(wù)數(shù)據(jù)進行管理;第二數(shù)虛擬數(shù)據(jù)庫可以通過第二數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對第一虛擬數(shù)據(jù)庫進行操作,從而間接管理到真實數(shù)據(jù)庫,而實際應(yīng)用中對客戶端只公開第二數(shù)虛擬數(shù)據(jù)庫結(jié)構(gòu)。這種多層結(jié)構(gòu)增強了對真實數(shù)據(jù)庫中數(shù)據(jù)的安全性。
與現(xiàn)有技術(shù)相比,本發(fā)明提出的數(shù)據(jù)庫保密結(jié)構(gòu)及其使用方法通過多層映射和加密,有效隱藏了真實的數(shù)據(jù)庫結(jié)構(gòu)和數(shù)據(jù)庫設(shè)計思想;同時,結(jié)合數(shù)據(jù)庫結(jié)構(gòu)的動態(tài)維護變更,極好地實現(xiàn)了對數(shù)據(jù)庫結(jié)構(gòu)的保密。
圖1是本發(fā)明的數(shù)據(jù)庫保密結(jié)構(gòu)的示意圖。
圖2是本發(fā)明對數(shù)據(jù)庫保密結(jié)構(gòu)進行操作的流程圖。
具體實施例方式
圖1是本發(fā)明的數(shù)據(jù)庫保密結(jié)構(gòu)的示意圖。本發(fā)明的數(shù)據(jù)庫保密結(jié)構(gòu)包括一數(shù)據(jù)庫系統(tǒng)10、一數(shù)據(jù)庫映射關(guān)系模塊20、一數(shù)據(jù)庫備份模塊30、一數(shù)據(jù)庫操作申請模塊40及一數(shù)據(jù)庫監(jiān)控模塊50。該數(shù)據(jù)庫系統(tǒng)10包括虛擬數(shù)據(jù)庫D1和真實數(shù)據(jù)庫D2,虛擬數(shù)據(jù)庫D1只存放從真實數(shù)據(jù)庫D2映射過來的視圖語法以及存儲過程的語法,這些語法是經(jīng)過加密處理的;數(shù)據(jù)庫映射關(guān)系模塊20用于對虛擬數(shù)據(jù)庫D1和真實數(shù)據(jù)庫D2的結(jié)構(gòu)映射關(guān)系進行初始化。數(shù)據(jù)庫備份模塊30用于對真實數(shù)據(jù)庫D2進行備份并加密。數(shù)據(jù)庫操作申請模塊40設(shè)置于客戶端60中,并與數(shù)據(jù)庫監(jiān)控模塊50相連接,用于向數(shù)據(jù)庫申請操作資源。數(shù)據(jù)庫監(jiān)控模塊50用于對虛擬數(shù)據(jù)庫D1的資源進行管理和維護。
客戶端60要進行數(shù)據(jù)操作時,啟動數(shù)據(jù)庫操作申請模塊40,數(shù)據(jù)庫操作申請模塊40向數(shù)據(jù)庫監(jiān)控模塊50申請操作資源,數(shù)據(jù)庫監(jiān)控程序模塊50收到數(shù)據(jù)庫操作申請模塊40的申請后,對對應(yīng)資源進行維護,并返回給數(shù)據(jù)庫操作申請模塊40該資源的狀態(tài)標(biāo)志,數(shù)據(jù)庫操作申請模塊40收到資源狀態(tài)標(biāo)志申請成功信息后,反饋給客戶端,客戶端60對這些資源進行數(shù)據(jù)操作,并在操作完成后通過數(shù)據(jù)庫操作申請模塊40向數(shù)據(jù)庫監(jiān)控模塊50報告資源使用結(jié)束,數(shù)據(jù)庫監(jiān)控模塊50收到資源使用結(jié)束的報告后,對對應(yīng)資源進行再維護。數(shù)據(jù)庫備份時,啟動數(shù)據(jù)庫備份模塊30,對真實數(shù)據(jù)庫D2進行備份并加密。數(shù)據(jù)庫運行一段時間后,對真實數(shù)據(jù)庫結(jié)構(gòu)D2進行調(diào)整,重新維護數(shù)據(jù)庫結(jié)構(gòu)的映射關(guān)系。
數(shù)據(jù)庫保密結(jié)構(gòu)是通過映射和加密的方法達到對數(shù)據(jù)庫結(jié)構(gòu)保密的目的,其創(chuàng)建和應(yīng)用包括下列四部分操作,各部分操作的流程如下1、對數(shù)據(jù)庫結(jié)構(gòu)映射關(guān)系的初始化(1)設(shè)數(shù)據(jù)結(jié)構(gòu)中的表名稱、字段名稱、字段類型及存儲過程為集合M1;(2)運行數(shù)據(jù)庫映射關(guān)系模塊20,輸入集合M1和參數(shù)α,編制出與集合M1對應(yīng)沒有實際意義的表名稱、字段名稱、字段類型的集合M2;(3)再輸入?yún)?shù)β,運行系統(tǒng)數(shù)據(jù)庫映射關(guān)系模塊20加密編制與集合M1、M2一一對應(yīng)的一組表和字段的名稱集合M3,保存這些對應(yīng)關(guān)系于一張?zhí)厥獾慕?jīng)過加密處理的文件F中;(4)用集合M2建真實數(shù)據(jù)庫D2,同時創(chuàng)建虛擬數(shù)據(jù)庫D1,在虛擬數(shù)據(jù)庫D1中創(chuàng)建一張維護表T,T中存放集合M1中表名稱及從虛擬數(shù)據(jù)庫D2庫中集合M2對應(yīng)映射過來的,與集合M1中表名、列名均相同的視圖創(chuàng)建語法和集合M1中存儲過程的名稱及語法,且視圖語法中的表和字段名稱用對應(yīng)集合M3中的表和字段的名稱代替,并且與存儲過程語法一樣進行加密處理。
2、對數(shù)據(jù)庫結(jié)構(gòu)映射關(guān)系的維護(1)當(dāng)數(shù)據(jù)庫運行一段時間后,為了安全起見,輸入集合M1和參數(shù)α’,運行數(shù)據(jù)庫映射關(guān)系模塊20,生成對應(yīng)集合M2’;(2)根據(jù)集合M2’創(chuàng)建系列新表,對應(yīng)導(dǎo)入集合M2系列表數(shù)據(jù)到集合M2’系列表中,刪除集合M2系列表,同時重新維護存放集合M1、M2’、M3關(guān)系的文件F。
3、對數(shù)據(jù)庫的操作的處理,如圖2所示,其包括如下步驟(1)進行數(shù)據(jù)訪問時,啟動數(shù)據(jù)庫操作申請模塊40,向數(shù)據(jù)庫監(jiān)控模塊50申請訪問的資源;(2)數(shù)據(jù)庫監(jiān)控模塊50收到請求后,檢測是否有該資源存在,如果存在,則將該資源訪問連接數(shù)加1,返回給數(shù)據(jù)庫操作申請模塊40申請成功標(biāo)志;如果不存在,則從維護表T中取出資源創(chuàng)建語法,用數(shù)據(jù)庫監(jiān)控模塊50啟動時讀取的文件F信息,解密創(chuàng)建語法并創(chuàng)建相關(guān)資源,若創(chuàng)建成功,則將該視圖訪問連接數(shù)設(shè)為1,返回給數(shù)據(jù)庫操作申請模塊40申請成功標(biāo)志,若創(chuàng)建失敗,則返回給數(shù)據(jù)庫操作申請模塊40失敗標(biāo)志;(3)數(shù)據(jù)庫操作申請模塊40將資源創(chuàng)建成功標(biāo)志反饋給客戶端60,客戶端60通過這些資源操作數(shù)據(jù);(4)客戶端60操作數(shù)據(jù)完成后,通過數(shù)據(jù)庫操作申請模塊40向數(shù)據(jù)庫監(jiān)控模塊50發(fā)送資源使用完成信號;(5)數(shù)據(jù)庫監(jiān)控模塊50接到資源使用完成信號后,對資源連接數(shù)進行減1操作,檢查資源連接數(shù),若資源連接數(shù)小于1,則刪除資源。
4、加密數(shù)據(jù)庫備份運行數(shù)據(jù)庫備份模塊30,完成對真實數(shù)據(jù)庫D2的備份,并把備份信息加密。
在上述具體實施方式
中,集合M2、M2’可以分別是一組或多組,對應(yīng)參數(shù)α、α’、β均可以是一個參數(shù),也可以是一組參數(shù),其形式可以是單純的數(shù)字、符號、字符串或一段程序,可以進行加密處理,也可以不進行加密處理;而產(chǎn)生集合M3時以及存放在T表中的語法,也都可以不進行加密,同樣保存映射關(guān)系的文件F也可以是一張表或其他形式,完全取次于實現(xiàn)中安全級別的高低。
在本發(fā)明的一個較佳實施例中,設(shè)置了二個虛擬數(shù)據(jù)庫和二個數(shù)據(jù)庫映射關(guān)系模塊,此時,第一虛擬數(shù)據(jù)庫可以通過第一數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對真實數(shù)據(jù)庫中的業(yè)務(wù)數(shù)據(jù)進行管理;第二數(shù)虛擬數(shù)據(jù)庫可以通過第二數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對第一虛擬數(shù)據(jù)庫進行操作,從而間接管理到真實數(shù)據(jù)庫,而實際應(yīng)用中對客戶端只公開第二數(shù)虛擬數(shù)據(jù)庫結(jié)構(gòu)。這種多層結(jié)構(gòu)增強了對真實數(shù)據(jù)庫中數(shù)據(jù)的安全性。
在本發(fā)明的實施方式中,對初始化及維護數(shù)據(jù)庫結(jié)構(gòu)的操作,還可通過下列三個方式實現(xiàn)(一)當(dāng)數(shù)據(jù)庫結(jié)構(gòu)中大量使用了觸發(fā)器時,數(shù)據(jù)庫映射關(guān)系模塊20初始化生成集合M2時,產(chǎn)生兩組數(shù)據(jù),設(shè)為集合M21、M22,用M21創(chuàng)建真實數(shù)據(jù)庫D2真實業(yè)務(wù)表,用M22在真實數(shù)據(jù)庫D2中創(chuàng)建對應(yīng)的從集合M21映射過來的視圖,觸發(fā)器中的對數(shù)據(jù)操作均采用調(diào)用存儲過程的方法實現(xiàn),這些存儲過程中對數(shù)據(jù)的訪問均通過用集合M22創(chuàng)建的視圖,而虛擬數(shù)據(jù)庫D1庫中T表的視圖原始創(chuàng)建語法也均來自于集合M22,這樣當(dāng)數(shù)據(jù)庫結(jié)構(gòu)維護變更集合M2時,數(shù)據(jù)庫映射關(guān)系模塊20中只需要增加重新維護這些用集合M22創(chuàng)建的視圖的功能即可,極大地減少了庫結(jié)構(gòu)變更的維護工作量。
(二)當(dāng)對數(shù)據(jù)庫結(jié)構(gòu)進行維護進,重新生成集合M2為M2’時,也可以同時重新生成集合M3為集合M3’,對應(yīng)數(shù)據(jù)庫映射關(guān)系模塊20增加對虛擬數(shù)據(jù)庫D1的T表視圖創(chuàng)建語法的維護,從而進一步加強數(shù)據(jù)結(jié)構(gòu)保密的安全性。
(三)當(dāng)安全性要求不是非常高時,對數(shù)據(jù)庫結(jié)構(gòu)進行的維護,通常情況下只重新生成集合M3為集合M3’,對應(yīng)數(shù)據(jù)庫映射關(guān)系模塊20增加對虛擬數(shù)據(jù)庫D1的T表視圖創(chuàng)建語法的維護,只有數(shù)據(jù)庫結(jié)構(gòu)運行相當(dāng)長一段時間才重新生成結(jié)合M2為集合M2’,對業(yè)務(wù)數(shù)據(jù)存在的真實表進行維護。
本發(fā)明提出的通過映射和加密的技術(shù)對數(shù)據(jù)庫結(jié)構(gòu)進行保密的方法與現(xiàn)有技術(shù)相比,具有以下優(yōu)點(一)安全可靠對數(shù)據(jù)庫結(jié)構(gòu)進行多層映射和加密,極大程度上隱藏數(shù)據(jù)庫結(jié)構(gòu)的真實設(shè)計思想,盜用者破解難度較大;結(jié)合所有數(shù)據(jù)庫設(shè)計思想只有在運行時部分顯示,且可以對真實業(yè)務(wù)表動態(tài)調(diào)整與維護的技術(shù)使得盜用者破解更加困難。
(二)技術(shù)容易封裝,能很方便地在不同軟件中使用本發(fā)明很容易封裝成初始化及維護數(shù)據(jù)庫結(jié)構(gòu)的映射關(guān)系程序、數(shù)據(jù)庫操作申請程序、數(shù)據(jù)庫運行監(jiān)控程序和數(shù)據(jù)庫備份加密程序,且它們開發(fā)封裝完成后,可以直接布置在任何軟件中,接口簡單不會給軟件的開發(fā)和維護帶來過多附加工作量。
本發(fā)明中提到的參數(shù)可為數(shù)字、符號、字符串和/或程序。
本發(fā)明不為上述實施方式所限,還可做出其它變更,如,可以對數(shù)據(jù)庫結(jié)構(gòu)完成初始化映射后,不進行動態(tài)維護;相應(yīng)也可以在虛擬數(shù)據(jù)庫D1中直接創(chuàng)建從集合M1到集合M2映射的視圖,不再進行加密保護,對應(yīng)也不需要再開發(fā)初始化及維護數(shù)據(jù)庫結(jié)構(gòu)的映射關(guān)系模塊、數(shù)據(jù)庫操作申請模塊和數(shù)據(jù)庫監(jiān)控模塊,甚至不進行數(shù)據(jù)庫備份。
另外,本領(lǐng)域技術(shù)人員還可在本發(fā)明精神內(nèi)做其它變化。這些依據(jù)本發(fā)明精神所做的變化,都應(yīng)包含在本發(fā)明所要求保護的范圍之內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)庫保密結(jié)構(gòu),其特征在于包括一數(shù)據(jù)庫系統(tǒng)及至少一個數(shù)據(jù)庫映射關(guān)系模塊,所述的數(shù)據(jù)庫系統(tǒng)包括一個真實數(shù)據(jù)庫和至少一個虛擬數(shù)據(jù)庫,虛擬數(shù)據(jù)庫通過數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對真實數(shù)據(jù)庫中的業(yè)務(wù)數(shù)據(jù)進行管理,數(shù)據(jù)庫映射關(guān)系模塊用于對真實數(shù)據(jù)庫、虛擬數(shù)據(jù)庫的結(jié)構(gòu)和它們之間的映射關(guān)系進行初始化和維護。
2.如權(quán)利要求1所述的數(shù)據(jù)庫保密結(jié)構(gòu),其特征在于所述的真實數(shù)據(jù)庫映射過來的視圖語法以及存儲過程的語法經(jīng)過加密處理。
3.如權(quán)利要求1所述的數(shù)據(jù)庫保密結(jié)構(gòu),其特征在于還包括一用于對真實數(shù)據(jù)庫進行備份及加密的數(shù)據(jù)庫備份模塊。
4.如權(quán)利要求1所述的數(shù)據(jù)庫保密結(jié)構(gòu),其特征在于,還包括一數(shù)據(jù)庫操作申請模塊及一數(shù)據(jù)庫監(jiān)控模塊,所述的數(shù)據(jù)庫操作申請模塊設(shè)置于客戶端,并通過數(shù)據(jù)庫監(jiān)控模塊與數(shù)據(jù)庫系統(tǒng)相連接,用于申請數(shù)據(jù)庫資源,所述的數(shù)據(jù)庫監(jiān)控模塊用于對虛擬數(shù)據(jù)庫的資源進行管理和維護。
5.如權(quán)利要求1所述的數(shù)據(jù)庫保密結(jié)構(gòu),其特征在于,設(shè)置了二個虛擬數(shù)據(jù)庫和二個數(shù)據(jù)庫映射關(guān)系模塊,第一虛擬數(shù)據(jù)庫可以通過第一數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對真實數(shù)據(jù)庫中的業(yè)務(wù)數(shù)據(jù)進行管理;第二數(shù)虛擬數(shù)據(jù)庫可以通過第二數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對第一虛擬數(shù)據(jù)庫進行操作,從而間接管理到真實數(shù)據(jù)庫,而實際應(yīng)用中對客戶端只公開第二數(shù)虛擬數(shù)據(jù)庫結(jié)構(gòu)。
6.一種數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,所述的數(shù)據(jù)庫保密結(jié)構(gòu)包括一數(shù)據(jù)庫系統(tǒng)及至少一個數(shù)據(jù)庫映射關(guān)系模塊,所述的數(shù)據(jù)庫系統(tǒng)包括一真實數(shù)據(jù)庫和至少一個虛擬數(shù)據(jù)庫,其特征在于所述的方法包括對真實數(shù)據(jù)庫和虛擬數(shù)據(jù)庫進行初始化的步驟,使得真實數(shù)據(jù)庫存放真實的業(yè)務(wù)數(shù)據(jù),虛擬數(shù)據(jù)庫存放從真實數(shù)據(jù)庫映射過來的視圖語法以及存儲過程的語法。
7.如權(quán)利要求6所述的數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,其特征在于所述初始化的步驟包括下列具體步驟a.設(shè)數(shù)據(jù)結(jié)構(gòu)中的表名稱、字段名稱、字段類型及存儲過程為集合M;b.運行數(shù)據(jù)庫映射關(guān)系模塊,輸入集合M和設(shè)定參數(shù),編制出與集合M一一對應(yīng)的沒有實際意義的集合M’,保存這些對應(yīng)關(guān)系于一張?zhí)厥獾慕?jīng)過加密處理的表或文件中;C.用集合M’建一個真實數(shù)據(jù)庫D2,同時創(chuàng)建一個虛擬數(shù)據(jù)庫D1,在虛擬數(shù)據(jù)庫D1中創(chuàng)建一張維護表T,T中存放M集合中表名稱及從真實數(shù)據(jù)庫D2中集合M’對應(yīng)映射過來的與集合M中表名、列名均相同的視圖創(chuàng)建語法和集合M中存儲過程的名稱及語法。
8.如權(quán)利要求6所述的數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,其特征在于還包括對數(shù)據(jù)庫結(jié)構(gòu)關(guān)系進行維護的步驟,該步驟具體如下a.輸入集合M1和新的參數(shù),運行數(shù)據(jù)庫映射關(guān)系模塊,生成新的集合M’;b.根據(jù)集合M’創(chuàng)建系列新表,對應(yīng)導(dǎo)入原集合M’系列表數(shù)據(jù)到新集合M’系列表中,刪除原集合M’系列表,同時重新維護存放集合M、M’關(guān)系的表或者文件。
9.如權(quán)利要求6所述的數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,其特征在于還包括對數(shù)據(jù)庫進行操作的步驟,該操作的具體步驟如下a.進行數(shù)據(jù)庫訪問時,客戶端啟動數(shù)據(jù)庫操作申請模塊,向數(shù)據(jù)庫監(jiān)控模塊申請要訪問的數(shù)據(jù)庫資源;b.數(shù)據(jù)庫監(jiān)控模塊收到申請后,對要訪問的數(shù)據(jù)庫資源進行維護,并返回給數(shù)據(jù)庫操作申請模塊該資源申請成功與否的狀態(tài)標(biāo)志;c.數(shù)據(jù)庫操作申請模塊收到資源申請成功的標(biāo)志后,反饋給客戶端,客戶端通過這些資源操作數(shù)據(jù);d.客戶端操作數(shù)據(jù)完成后,通過數(shù)據(jù)庫操作申請模塊向數(shù)據(jù)庫監(jiān)控模塊發(fā)送資源使用完成的信號;e.數(shù)據(jù)庫監(jiān)控模塊接到資源使用完成信號后,對上述資源進行再維護。
10.如權(quán)利要求6所述的數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法,其特征在于還包括對所述真實數(shù)據(jù)庫進行備份并對備份信息進行加密的步驟。
全文摘要
本發(fā)明涉及一種數(shù)據(jù)庫保密結(jié)構(gòu)及其使用方法,所述的數(shù)據(jù)庫保密結(jié)構(gòu)包括一數(shù)據(jù)庫系統(tǒng)及至少一個數(shù)據(jù)庫映射關(guān)系模塊,該數(shù)據(jù)庫系統(tǒng)包括一真實數(shù)據(jù)庫和至少一個虛擬數(shù)據(jù)庫,虛擬數(shù)據(jù)庫通過數(shù)據(jù)庫映射關(guān)系模塊創(chuàng)建的跨庫視圖對真實數(shù)據(jù)庫中的業(yè)務(wù)數(shù)據(jù)進行管理。本發(fā)明提出的數(shù)據(jù)庫保密結(jié)構(gòu)可以設(shè)置多個虛擬數(shù)據(jù)庫,有效地防止他人盜用和復(fù)制數(shù)據(jù)庫資源。本發(fā)明還提供一種數(shù)據(jù)庫保密結(jié)構(gòu)的使用方法。
文檔編號G06F21/00GK101093502SQ200710075079
公開日2007年12月26日 申請日期2007年6月19日 優(yōu)先權(quán)日2007年6月19日
發(fā)明者尹立東, 王東衛(wèi), 杭小林 申請人:深圳市邁科龍電子有限公司