本發(fā)明涉及數(shù)據(jù)庫(kù)軟件系統(tǒng)開發(fā)技術(shù)領(lǐng)域,具體涉及一種數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法。
背景技術(shù):
數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)是在數(shù)據(jù)庫(kù)管理系統(tǒng)支持下建立的計(jì)算機(jī)應(yīng)用系統(tǒng),以數(shù)據(jù)庫(kù)為數(shù)據(jù)知識(shí)基礎(chǔ),以業(yè)務(wù)應(yīng)用子系統(tǒng)為主要開發(fā)內(nèi)容,用以根據(jù)不同業(yè)務(wù)需求而提供不同的業(yè)務(wù)應(yīng)用功能。常見的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)例如,以數(shù)據(jù)庫(kù)為基礎(chǔ)的財(cái)務(wù)管理系統(tǒng)、人事管理系統(tǒng)、圖書管理系統(tǒng),等等。無(wú)論是面向內(nèi)部業(yè)務(wù)和管理需求的管理信息系統(tǒng),還是面向外部提供信息服務(wù)的對(duì)外業(yè)務(wù)信息系統(tǒng),從技術(shù)角度而言,這些數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)都是以數(shù)據(jù)庫(kù)為基礎(chǔ)和核心的計(jì)算機(jī)應(yīng)用系統(tǒng)。
在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)中,除了需要建立基礎(chǔ)數(shù)據(jù)庫(kù)之外,還需要根據(jù)業(yè)務(wù)需求而開發(fā)提供相應(yīng)業(yè)務(wù)應(yīng)用功能的業(yè)務(wù)應(yīng)用子系統(tǒng),而不同業(yè)務(wù)領(lǐng)域所對(duì)應(yīng)的業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)涉及到的業(yè)務(wù)功能需求和開發(fā)技術(shù)可能存在較大的差異,需要相關(guān)業(yè)務(wù)領(lǐng)域的專業(yè)技術(shù)開發(fā)人員來(lái)實(shí)施開發(fā),因此,對(duì)于業(yè)務(wù)應(yīng)用子系統(tǒng)數(shù)量較多的大型數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)而言,很難在一個(gè)項(xiàng)目開發(fā)團(tuán)隊(duì)中集合到各個(gè)不同業(yè)務(wù)領(lǐng)域相應(yīng)的業(yè)務(wù)應(yīng)用子系統(tǒng)技術(shù)開發(fā)人員,所以各個(gè)不同業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)往往需要分配給多個(gè)項(xiàng)目開發(fā)組來(lái)分別實(shí)施,這也有助于加快數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)進(jìn)度。在業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)過(guò)程中,由于需要協(xié)調(diào)業(yè)務(wù)應(yīng)用子系統(tǒng)中各不同功能項(xiàng)對(duì)基礎(chǔ)數(shù)據(jù)庫(kù)的數(shù)據(jù)訪問(wèn)、調(diào)用和數(shù)據(jù)接口等,基礎(chǔ)數(shù)據(jù)庫(kù)以及各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的不同項(xiàng)目開發(fā)組之間,往往需要依賴局域網(wǎng)或互聯(lián)網(wǎng)環(huán)境進(jìn)行信息交互,以便于查看和了解基礎(chǔ)數(shù)據(jù)庫(kù)中的數(shù)據(jù)內(nèi)容和其它業(yè)務(wù)應(yīng)用子系統(tǒng)中相關(guān)的數(shù)據(jù)、程序內(nèi)容,以保證業(yè)務(wù)應(yīng)用子系統(tǒng)與基礎(chǔ)數(shù)據(jù)庫(kù)之間,以及各相關(guān)業(yè)務(wù)應(yīng)用子系統(tǒng)之間能夠相互協(xié)同工作。
但有時(shí)因?yàn)橐恍┨厥庠?,例如存在商業(yè)秘密或行業(yè)保密規(guī)定等原因,需要避免涉密數(shù)據(jù)信息的外泄,尤其是基礎(chǔ)數(shù)據(jù)庫(kù)中的一些核心數(shù)據(jù)。但如果為了保密,由保密范圍內(nèi)的項(xiàng)目開發(fā)小組來(lái)同時(shí)完成基礎(chǔ)數(shù)據(jù)庫(kù)和全部業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù),不僅工作量巨大、開發(fā)周期長(zhǎng),而且很難集合到各個(gè)不同業(yè)務(wù)領(lǐng)域相應(yīng)的業(yè)務(wù)應(yīng)用子系統(tǒng)技術(shù)開發(fā)人員,這會(huì)增加開發(fā)工作難度和技術(shù)成本,甚至可能導(dǎo)致整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)工作陷入困境、開發(fā)進(jìn)度停滯。若分配給保密范圍以外的其他項(xiàng)目開發(fā)小組來(lái)協(xié)助完成業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù),那么如何解決信息保密以及各業(yè)務(wù)應(yīng)用子系統(tǒng)之間的協(xié)同開發(fā)與調(diào)試問(wèn)題,則成為了亟待解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)中存在的不足,本發(fā)明的目的在于提供一種數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法,以解決在涉密需求環(huán)境下的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā)難以兼顧保密要求和開發(fā)進(jìn)度的問(wèn)題。
為實(shí)現(xiàn)上述目的,本發(fā)明采用了如下技術(shù)方案:
一種數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法,所述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)包括基礎(chǔ)數(shù)據(jù)庫(kù)和多個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng),數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)還包括用于提供分布式開發(fā)支持的數(shù)據(jù)應(yīng)用支撐子系統(tǒng);首先進(jìn)行基礎(chǔ)數(shù)據(jù)庫(kù)的架構(gòu)設(shè)計(jì)以及數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā),然后分別進(jìn)行各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā),通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)采用數(shù)據(jù)加密調(diào)用機(jī)制限制各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)中對(duì)基礎(chǔ)數(shù)據(jù)庫(kù)中被調(diào)用數(shù)據(jù)的訪問(wèn)和調(diào)用權(quán)限,在業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)開發(fā)完成后通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)加入到基礎(chǔ)數(shù)據(jù)庫(kù)中并完成相應(yīng)的數(shù)據(jù)更新,由此逐步完成各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中全部功能項(xiàng)的開發(fā)任務(wù)以及基礎(chǔ)數(shù)據(jù)庫(kù)的更新任務(wù),從而完成整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,具體而言,其開發(fā)流程包括如下步驟:
1)完成基礎(chǔ)數(shù)據(jù)庫(kù)的架構(gòu)設(shè)計(jì),并將用于各業(yè)務(wù)應(yīng)用子系統(tǒng)的被調(diào)用數(shù)據(jù)存儲(chǔ)于基礎(chǔ)數(shù)據(jù)庫(kù)中;
2)在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā)中,調(diào)取基礎(chǔ)數(shù)據(jù)庫(kù)內(nèi)存儲(chǔ)的每個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中每個(gè)功能項(xiàng)的被調(diào)用數(shù)據(jù)進(jìn)行加密,生成對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī),且在數(shù)據(jù)加密調(diào)用虛擬機(jī)中加入用于判定非法解密破解時(shí)自動(dòng)刪除數(shù)據(jù)加密調(diào)用虛擬機(jī)內(nèi)全部數(shù)據(jù)的防破解監(jiān)控程序,并生成對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)執(zhí)行調(diào)用操作的數(shù)據(jù)調(diào)用接口,用以對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)中被調(diào)用數(shù)據(jù)的訪問(wèn)和調(diào)用權(quán)限加以限制;
3)在業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,通過(guò)獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口,利用數(shù)據(jù)調(diào)用接口獲取數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)用以完成相應(yīng)功能項(xiàng)的開發(fā),然后將該功能項(xiàng)的全部代碼、文檔和數(shù)據(jù)庫(kù)腳本打包成為相應(yīng)的功能執(zhí)行程序模塊,并生成該功能執(zhí)行程序模塊的數(shù)據(jù)反饋接口;
4)通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng),獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口,利用數(shù)據(jù)反饋接口將相應(yīng)的功能執(zhí)行程序模塊與數(shù)據(jù)應(yīng)用支撐子系統(tǒng)進(jìn)行對(duì)接,調(diào)取所述功能執(zhí)行程序模塊提供的數(shù)據(jù)內(nèi)容加入到基礎(chǔ)數(shù)據(jù)庫(kù)中,并針對(duì)與所述功能執(zhí)行程序模塊相關(guān)的其它業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng),對(duì)相對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)和相應(yīng)的數(shù)據(jù)調(diào)用接口進(jìn)行同步更新;
5)重復(fù)循環(huán)執(zhí)行步驟3)~4),直至完成各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中全部功能項(xiàng)的開發(fā)任務(wù)以及基礎(chǔ)數(shù)據(jù)庫(kù)的更新任務(wù),從而完成整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,具體而言,所述數(shù)據(jù)加密調(diào)用虛擬機(jī)中的防破解監(jiān)控程序用于識(shí)別對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)的解密操作,若解密操作次數(shù)達(dá)到預(yù)設(shè)定的解密限制次數(shù)且依然未解密成功,則判定為非法解密破解,自動(dòng)刪除數(shù)據(jù)加密調(diào)用虛擬機(jī)內(nèi)的全部數(shù)據(jù)。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為改進(jìn)方案,在所述步驟2)的數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中生成數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,以及在所述步驟4)中數(shù)據(jù)應(yīng)用支撐子系統(tǒng)更新數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,都對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口進(jìn)行加密壓縮處理,生成相應(yīng)的虛擬機(jī)壓縮文件;
所述步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,先獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的虛擬機(jī)壓縮文件,再通過(guò)對(duì)所述虛擬機(jī)壓縮文件進(jìn)行解密解壓處理,獲得相應(yīng)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為改進(jìn)方案,所述步驟2)和步驟4)中生成業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的虛擬機(jī)壓縮文件后,將其存儲(chǔ)于存儲(chǔ)介質(zhì)中;
所述步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的虛擬機(jī)壓縮文件。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為改進(jìn)方案,在所述步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中生成功能執(zhí)行程序模塊及其相應(yīng)的數(shù)據(jù)反饋接口后,對(duì)所述功能執(zhí)行程序模塊及其相應(yīng)的數(shù)據(jù)反饋接口進(jìn)行加密壓縮處理,生成相應(yīng)的程序模塊壓縮文件;
所述步驟4)中,數(shù)據(jù)應(yīng)用支撐子系統(tǒng)先獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的程序模塊壓縮文件,再通過(guò)對(duì)所述程序模塊壓縮文件進(jìn)行解密解壓處理,獲得相應(yīng)功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為改進(jìn)方案,所述步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中生成一個(gè)功能項(xiàng)對(duì)應(yīng)的程序模塊壓縮文件后,將其存儲(chǔ)于存儲(chǔ)介質(zhì)中;
所述步驟4)中,數(shù)據(jù)應(yīng)用支撐子系統(tǒng)是通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的程序模塊壓縮文件。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為改進(jìn)方案,在所述步驟2)的數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中生成數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,以及在所述步驟4)中數(shù)據(jù)應(yīng)用支撐子系統(tǒng)更新數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,都將數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口存儲(chǔ)于存儲(chǔ)介質(zhì)中;
所述步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口,且生成該功能項(xiàng)相應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口后,均存儲(chǔ)于存儲(chǔ)介質(zhì)中;
所述步驟4)中數(shù)據(jù)應(yīng)用支撐子系統(tǒng)是通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為進(jìn)一步改進(jìn)方案,所述存儲(chǔ)介質(zhì)中設(shè)置有防泄密監(jiān)控程序,所述防泄密監(jiān)控程序記錄有指定許可的設(shè)備物理地址,用于讀取與存儲(chǔ)介質(zhì)建立數(shù)據(jù)連接的設(shè)備實(shí)際物理地址,若讀取到的設(shè)備實(shí)際物理地址與指定許可的設(shè)備物理地址相一致,則允許建立數(shù)據(jù)連接的設(shè)備直接讀取存儲(chǔ)介質(zhì)中存儲(chǔ)的數(shù)據(jù);若讀取到的設(shè)備實(shí)際物理地址與指定許可的設(shè)備物理地址不一致,則隱藏存儲(chǔ)介質(zhì)中存儲(chǔ)的全部數(shù)據(jù)。
上述數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,作為進(jìn)一步改進(jìn)方案,所述存儲(chǔ)介質(zhì)中的防泄密監(jiān)控程序,在讀取到的設(shè)備實(shí)際物理地址與指定許可的設(shè)備物理地址不一致而隱藏存儲(chǔ)介質(zhì)中存儲(chǔ)的全部數(shù)據(jù)后,若建立數(shù)據(jù)連接的設(shè)備嘗試讀取隱藏?cái)?shù)據(jù),防泄密監(jiān)控程序則對(duì)存儲(chǔ)介質(zhì)中存儲(chǔ)的全部數(shù)據(jù)進(jìn)行刪除。
相比于現(xiàn)有技術(shù),本發(fā)明具有如下有益效果:
1、本發(fā)明數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,采用了一種在基礎(chǔ)數(shù)據(jù)庫(kù)和數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中進(jìn)行數(shù)據(jù)加密,并向各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)提供權(quán)限受限的數(shù)據(jù)調(diào)用的半封閉式開發(fā)模式,使得基礎(chǔ)數(shù)據(jù)庫(kù)和數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā)任務(wù)能夠交由保密范圍內(nèi)的項(xiàng)目開發(fā)組進(jìn)行開發(fā),而各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)能夠交由保密范圍以外的其它項(xiàng)目開發(fā)組進(jìn)行分布式的開發(fā),這樣有利于解決數(shù)據(jù)保密要求與開發(fā)人員配備上的矛盾,從而能夠在兼顧保密要求的環(huán)境下更好地確保數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)進(jìn)度,降低開發(fā)工作難度和技術(shù)成本。
2、在本發(fā)明數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法中,還能夠在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)和各業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)間的數(shù)據(jù)交互過(guò)程中,采用多層次的防泄密保護(hù)措施,增強(qiáng)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)分布式開發(fā)環(huán)境下的數(shù)據(jù)保密安全性,能夠有效削弱,甚至避免數(shù)據(jù)泄露風(fēng)險(xiǎn),很好地滿足涉密開發(fā)環(huán)境的要求。
附圖說(shuō)明
圖1為本發(fā)明數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法的流程圖。
具體實(shí)施方式
針對(duì)涉密環(huán)境下的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā)任務(wù),為了能夠更好地兼顧保密要求和開發(fā)進(jìn)度,本發(fā)明提出了一種數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法,該方法的主要思想是,除了數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中基礎(chǔ)數(shù)據(jù)庫(kù)和多個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)之外,還增加了針對(duì)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā)任務(wù),在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的構(gòu)架中,數(shù)據(jù)應(yīng)用支撐子系統(tǒng)位于基礎(chǔ)數(shù)據(jù)庫(kù)和各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)之間,用于提供分布式開發(fā)支持;數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)工作,首先進(jìn)行基礎(chǔ)數(shù)據(jù)庫(kù)的架構(gòu)設(shè)計(jì)以及數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā),然后分別進(jìn)行各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā),通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng),采用數(shù)據(jù)加密調(diào)用機(jī)制限制各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)中對(duì)基礎(chǔ)數(shù)據(jù)庫(kù)中被調(diào)用數(shù)據(jù)的訪問(wèn)和調(diào)用權(quán)限,在業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)開發(fā)完成后通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)加入到基礎(chǔ)數(shù)據(jù)庫(kù)中并完成相應(yīng)的數(shù)據(jù)更新,由此逐步完成各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中全部功能項(xiàng)的開發(fā)任務(wù)以及基礎(chǔ)數(shù)據(jù)庫(kù)的更新任務(wù),從而完成整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)。
這樣一來(lái),基礎(chǔ)數(shù)據(jù)庫(kù)和數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā)任務(wù)可以交由保密范圍內(nèi)的項(xiàng)目開發(fā)組進(jìn)行開發(fā),以確保數(shù)據(jù)保密,而各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)則可以交由保密范圍以外的其它項(xiàng)目開發(fā)組進(jìn)行分布式的開發(fā),且在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中,通過(guò)數(shù)據(jù)加密調(diào)用機(jī)制限制保密范圍以外的項(xiàng)目開發(fā)組對(duì)基礎(chǔ)數(shù)據(jù)庫(kù)中被調(diào)用數(shù)據(jù)的訪問(wèn)和調(diào)用權(quán)限,當(dāng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)開發(fā)完成后通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)加入到基礎(chǔ)數(shù)據(jù)庫(kù)中并完成相應(yīng)的數(shù)據(jù)更新,這樣,負(fù)責(zé)每個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的項(xiàng)目開發(fā)組僅具有訪問(wèn)和調(diào)用與其開發(fā)的功能項(xiàng)相關(guān)的數(shù)據(jù)信息的權(quán)限,并且由于不同業(yè)務(wù)應(yīng)用子系統(tǒng)、不同功能項(xiàng)之間存在被調(diào)用數(shù)據(jù)需求上的差異,負(fù)責(zé)各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的不同項(xiàng)目開發(fā)組之間也難以直接共享數(shù)據(jù)信息,降低了各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的項(xiàng)目開發(fā)組之間出現(xiàn)數(shù)據(jù)信息交叉泄露的風(fēng)險(xiǎn);由此,既保證了數(shù)據(jù)保密,又不影響業(yè)務(wù)應(yīng)用子系統(tǒng)與基礎(chǔ)數(shù)據(jù)庫(kù)之間,以及各相關(guān)業(yè)務(wù)應(yīng)用子系統(tǒng)之間的數(shù)據(jù)協(xié)調(diào)同步,解決了數(shù)據(jù)保密要求與技術(shù)開發(fā)人員配備上的矛盾,從而能夠在兼顧保密要求的環(huán)境下更好地確保數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)進(jìn)度,降低開發(fā)工作難度和技術(shù)成本。
具體而言,本發(fā)明提出的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法,其開發(fā)流程如圖1所示,包括如下步驟:
1)完成基礎(chǔ)數(shù)據(jù)庫(kù)的架構(gòu)設(shè)計(jì),并將用于各業(yè)務(wù)應(yīng)用子系統(tǒng)的被調(diào)用數(shù)據(jù)存儲(chǔ)于基礎(chǔ)數(shù)據(jù)庫(kù)中。
在基礎(chǔ)數(shù)據(jù)庫(kù)的構(gòu)建過(guò)程中,除了需要完成數(shù)據(jù)庫(kù)架構(gòu)設(shè)計(jì),還需要先將用于各業(yè)務(wù)應(yīng)用子系統(tǒng)的相關(guān)數(shù)據(jù)存儲(chǔ)于基礎(chǔ)數(shù)據(jù)庫(kù)中以備調(diào)用。所建立的用于各業(yè)務(wù)應(yīng)用子系統(tǒng)的被調(diào)用數(shù)據(jù)可以是一些源數(shù)據(jù)體、參數(shù)、文檔、指令、腳本等,只要是被業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所需要調(diào)用的數(shù)據(jù),以及功能項(xiàng)執(zhí)行數(shù)據(jù)訪問(wèn)和調(diào)用時(shí)的相關(guān)數(shù)據(jù),都可以作為所需要的被調(diào)用數(shù)據(jù)。
2)在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā)中,調(diào)取基礎(chǔ)數(shù)據(jù)庫(kù)內(nèi)存儲(chǔ)的每個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中每個(gè)功能項(xiàng)的被調(diào)用數(shù)據(jù)進(jìn)行加密,生成對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī),且在數(shù)據(jù)加密調(diào)用虛擬機(jī)中加入用于判定非法解密破解時(shí)自動(dòng)刪除數(shù)據(jù)加密調(diào)用虛擬機(jī)內(nèi)全部數(shù)據(jù)的防破解監(jiān)控程序,并生成對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)執(zhí)行調(diào)用操作的數(shù)據(jù)調(diào)用接口,用以對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)中被調(diào)用數(shù)據(jù)的訪問(wèn)和調(diào)用權(quán)限加以限制。
數(shù)據(jù)應(yīng)用支撐子系統(tǒng)是用于支持分布式開發(fā)任務(wù)的,因此需要先于業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)而進(jìn)行開發(fā)。在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)的開發(fā)中,對(duì)各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中不同功能項(xiàng)的被調(diào)用數(shù)據(jù)進(jìn)行加密,是為了防止其中的涉密數(shù)據(jù)被隨意訪問(wèn)和調(diào)用,而加密后生成數(shù)據(jù)加密調(diào)用虛擬機(jī),就使得被調(diào)用數(shù)據(jù)加密后能夠通過(guò)數(shù)據(jù)加密調(diào)用虛擬機(jī)對(duì)外提供訪問(wèn)和調(diào)用處理,且需要借助執(zhí)行相應(yīng)調(diào)用操作的數(shù)據(jù)調(diào)用接口來(lái)實(shí)現(xiàn),以對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)中被調(diào)用數(shù)據(jù)的訪問(wèn)和調(diào)用權(quán)限加以限制。該步驟中所生成的一個(gè)數(shù)據(jù)加密調(diào)用虛擬機(jī),可以僅對(duì)應(yīng)于一個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng),也可以對(duì)應(yīng)于一個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中的多個(gè)功能項(xiàng)或者全部功能項(xiàng)。
3)在業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,通過(guò)獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口,利用數(shù)據(jù)調(diào)用接口獲取數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)以完成相應(yīng)功能項(xiàng)的開發(fā),然后將該功能項(xiàng)的全部代碼、文檔和數(shù)據(jù)庫(kù)腳本打包成為相應(yīng)的功能執(zhí)行程序模塊,并生成該功能執(zhí)行程序模塊的數(shù)據(jù)反饋接口。
對(duì)于執(zhí)行業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)的項(xiàng)目開發(fā)組而言,數(shù)據(jù)加密調(diào)用虛擬機(jī)就相當(dāng)于一個(gè)“黑盒子”,無(wú)法直接讀取其中的數(shù)據(jù)內(nèi)容,僅能夠通過(guò)數(shù)據(jù)調(diào)用接口在有限的權(quán)限范圍內(nèi)進(jìn)行數(shù)據(jù)的訪問(wèn)和調(diào)用,并且在數(shù)據(jù)加密調(diào)用虛擬機(jī)中加入有防破解監(jiān)控程序;數(shù)據(jù)加密調(diào)用虛擬機(jī)中的防破解監(jiān)控程序用于識(shí)別對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)的解密操作,若解密操作次數(shù)達(dá)到預(yù)設(shè)定的解密限制次數(shù)且依然未解密成功,則判定為非法解密破解,會(huì)自動(dòng)刪除數(shù)據(jù)加密調(diào)用虛擬機(jī)內(nèi)的全部數(shù)據(jù);因此,如果在業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)過(guò)程中嘗試對(duì)于數(shù)據(jù)加密調(diào)用虛擬機(jī)進(jìn)行非法解密破解,則將導(dǎo)致數(shù)據(jù)加密調(diào)用虛擬機(jī)內(nèi)的全部數(shù)據(jù)被防破解監(jiān)控程序自動(dòng)刪除,從而達(dá)到防止數(shù)據(jù)泄露的效果。在一個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)工作中,可能涉及到一個(gè)或者多個(gè)功能項(xiàng)的開發(fā)任務(wù),而針對(duì)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)的開發(fā)任務(wù)生成相應(yīng)的功能執(zhí)行程序模塊后,其提供的相應(yīng)功能或數(shù)據(jù)內(nèi)容需要通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)加入到基礎(chǔ)數(shù)據(jù)庫(kù)中,以備用于允許其它業(yè)務(wù)應(yīng)用子系統(tǒng)通過(guò)向數(shù)據(jù)應(yīng)用支撐子系統(tǒng)提出請(qǐng)求等方式加以調(diào)用,因此需要生成該功能執(zhí)行程序模塊的數(shù)據(jù)反饋接口,便于與數(shù)據(jù)應(yīng)用支撐子系統(tǒng)進(jìn)行對(duì)接。
4)通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng),獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口,利用數(shù)據(jù)反饋接口將相應(yīng)的功能執(zhí)行程序模塊與數(shù)據(jù)應(yīng)用支撐子系統(tǒng)進(jìn)行對(duì)接,調(diào)取所述功能執(zhí)行程序模塊提供的數(shù)據(jù)內(nèi)容加入到基礎(chǔ)數(shù)據(jù)庫(kù)中,并針對(duì)與所述功能執(zhí)行程序模塊相關(guān)的其它業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng),對(duì)相對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)和相應(yīng)的數(shù)據(jù)調(diào)用接口進(jìn)行同步更新。
數(shù)據(jù)應(yīng)用支撐子系統(tǒng)獲得每個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中的每個(gè)功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口后,需要先評(píng)估功能執(zhí)行程序模塊的文件完成度(查驗(yàn)合并的代碼和數(shù)據(jù)的關(guān)系,建立關(guān)系是否完備等等);若完成度不滿足要求則需要通知相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)的項(xiàng)目開發(fā)組對(duì)功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口進(jìn)行進(jìn)一步的修改和完善;若完成度滿足要求,則利用數(shù)據(jù)反饋接口將相應(yīng)的功能執(zhí)行程序模塊與數(shù)據(jù)應(yīng)用支撐子系統(tǒng)進(jìn)行對(duì)接,調(diào)取功能執(zhí)行程序模塊提供的數(shù)據(jù)內(nèi)容加入到基礎(chǔ)數(shù)據(jù)庫(kù)中,同時(shí)由于該功能執(zhí)行程序模塊所提供數(shù)據(jù)內(nèi)容的加入,其提供的相應(yīng)功能或數(shù)據(jù)內(nèi)容可能會(huì)被其它業(yè)務(wù)應(yīng)用子系統(tǒng)經(jīng)過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)進(jìn)行調(diào)用,因此可能使得其它業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的被調(diào)用數(shù)據(jù)中產(chǎn)生新的數(shù)據(jù)內(nèi)容,所以需要針對(duì)這些與該功能執(zhí)行程序模塊相關(guān)的其它業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng),對(duì)相應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)中的被調(diào)用數(shù)據(jù)和相應(yīng)的數(shù)據(jù)調(diào)用接口進(jìn)行同步更新,以滿足業(yè)務(wù)應(yīng)用子系統(tǒng)后續(xù)開發(fā)的需要。
5)重復(fù)循環(huán)執(zhí)行步驟3)~4),直至完成各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中全部功能項(xiàng)的開發(fā)任務(wù)以及基礎(chǔ)數(shù)據(jù)庫(kù)的更新任務(wù),從而完成整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)。
如此往復(fù),每個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中的每個(gè)功能項(xiàng)開發(fā)完成得到相應(yīng)的功能執(zhí)行程序模塊后,都通過(guò)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)加入到基礎(chǔ)數(shù)據(jù)庫(kù)中并完成相應(yīng)的數(shù)據(jù)更新,由此逐步完成各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)中全部功能項(xiàng)的開發(fā)任務(wù)以及基礎(chǔ)數(shù)據(jù)庫(kù)的更新任務(wù),直至整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)任務(wù)完成。
通過(guò)上述流程可以看到,本發(fā)明數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法,并沒(méi)有采用全封閉式的,即整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)全部使用統(tǒng)一開發(fā)模式,也沒(méi)有采用全開放式的,即數(shù)據(jù)應(yīng)用支撐子系統(tǒng)和各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)之間完全共享數(shù)據(jù)的并行開發(fā)模式,而是采用了一種在基礎(chǔ)數(shù)據(jù)庫(kù)和數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中進(jìn)行數(shù)據(jù)加密,并向各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)提供權(quán)限受限的數(shù)據(jù)調(diào)用的半封閉式開發(fā)模式,使得在數(shù)據(jù)保密需求的環(huán)境下,業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)能夠?qū)ν忾_放進(jìn)行分布式開發(fā),從而解決了數(shù)據(jù)保密要求與技術(shù)開發(fā)人員配備上的矛盾,有利于在兼顧保密要求的環(huán)境下更好地確保數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)進(jìn)度,降低開發(fā)工作難度和技術(shù)成本。
在開發(fā)過(guò)程中,執(zhí)行數(shù)據(jù)應(yīng)用支撐子系統(tǒng)開發(fā)任務(wù)的項(xiàng)目開發(fā)組與執(zhí)行業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)的項(xiàng)目開發(fā)組之間需要進(jìn)行數(shù)據(jù)傳輸,由于數(shù)據(jù)傳輸環(huán)境的復(fù)雜性,直接數(shù)據(jù)拷貝并不是一種安全方式,而網(wǎng)絡(luò)傳輸也并不是安全性非常良好的數(shù)據(jù)交互途徑。
為了加強(qiáng)數(shù)據(jù)保密性,本發(fā)明的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)分布式開發(fā)過(guò)程中,在上述步驟2)的數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中生成數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,以及在步驟4)中數(shù)據(jù)應(yīng)用支撐子系統(tǒng)更新數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,最好都對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口進(jìn)行加密壓縮處理生成相應(yīng)的虛擬機(jī)壓縮文件;而在步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,則先獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的虛擬機(jī)壓縮文件,再通過(guò)對(duì)所述虛擬機(jī)壓縮文件進(jìn)行解密解壓處理獲得相應(yīng)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口。由此,通過(guò)增加一道加密防護(hù),進(jìn)一步加強(qiáng)數(shù)據(jù)傳輸過(guò)程中的保密性能。
同樣的,本發(fā)明的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)分布式開發(fā)過(guò)程中,步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中生成功能執(zhí)行程序模塊及其相應(yīng)的數(shù)據(jù)反饋接口后,也最好對(duì)該功能執(zhí)行程序模塊及其相應(yīng)的數(shù)據(jù)反饋接口進(jìn)行加密壓縮處理生成相應(yīng)的程序模塊壓縮文件;在步驟4)中,數(shù)據(jù)應(yīng)用支撐子系統(tǒng)則先獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的程序模塊壓縮文件,再通過(guò)對(duì)所述程序模塊壓縮文件進(jìn)行解密解壓處理獲得相應(yīng)功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口。由此,通過(guò)增加一道加密防護(hù),進(jìn)一步加強(qiáng)數(shù)據(jù)傳輸過(guò)程中的保密性能。
而作為進(jìn)一步加強(qiáng)數(shù)據(jù)保密性的實(shí)施方案,在上述步驟2)和步驟4)中生成業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的虛擬機(jī)壓縮文件后,最好將其存儲(chǔ)于存儲(chǔ)介質(zhì)中;在步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,可以通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的虛擬機(jī)壓縮文件,再通過(guò)解密解壓獲得相應(yīng)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口。相應(yīng)地,步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中生成一個(gè)功能項(xiàng)對(duì)應(yīng)的程序模塊壓縮文件后,也最好將其存儲(chǔ)于存儲(chǔ)介質(zhì)中;步驟4)中,數(shù)據(jù)應(yīng)用支撐子系統(tǒng)則通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的程序模塊壓縮文件,再通過(guò)解密解壓處理獲得相應(yīng)功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口。由此,使得執(zhí)行數(shù)據(jù)應(yīng)用支撐子系統(tǒng)開發(fā)任務(wù)的項(xiàng)目開發(fā)組與執(zhí)行業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)的項(xiàng)目開發(fā)組之間,通過(guò)借助存儲(chǔ)介質(zhì)同時(shí)增加加密防護(hù)措施的方式進(jìn)行數(shù)據(jù)傳輸,對(duì)數(shù)據(jù)保密性實(shí)施雙重防護(hù),規(guī)避了網(wǎng)絡(luò)傳輸環(huán)境的安全風(fēng)險(xiǎn)。
當(dāng)然,如果僅從考慮網(wǎng)絡(luò)傳輸環(huán)境安全風(fēng)險(xiǎn)的角度,在本發(fā)明的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)分布式開發(fā)過(guò)程中,步驟2)的數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中生成數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,以及在所述步驟4)中數(shù)據(jù)應(yīng)用支撐子系統(tǒng)更新數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口后,也可以直接將數(shù)據(jù)加密調(diào)用虛擬機(jī)及其相應(yīng)的數(shù)據(jù)調(diào)用接口存儲(chǔ)于存儲(chǔ)介質(zhì)中;步驟3)的業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)中,則是通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取相應(yīng)業(yè)務(wù)應(yīng)用子系統(tǒng)中的一個(gè)功能項(xiàng)所對(duì)應(yīng)的數(shù)據(jù)加密調(diào)用虛擬機(jī)和數(shù)據(jù)調(diào)用接口,且生成該功能項(xiàng)相應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口后,也存儲(chǔ)于存儲(chǔ)介質(zhì)中;步驟4)中數(shù)據(jù)應(yīng)用支撐子系統(tǒng)則通過(guò)讀取存儲(chǔ)介質(zhì)來(lái)獲取業(yè)務(wù)應(yīng)用子系統(tǒng)中的功能項(xiàng)所對(duì)應(yīng)的功能執(zhí)行程序模塊和數(shù)據(jù)反饋接口。由此使得執(zhí)行數(shù)據(jù)應(yīng)用支撐子系統(tǒng)開發(fā)任務(wù)的項(xiàng)目開發(fā)組與執(zhí)行業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)的項(xiàng)目開發(fā)組之間通過(guò)存儲(chǔ)介質(zhì)進(jìn)行數(shù)據(jù)傳輸,雖然沒(méi)有專門針對(duì)數(shù)據(jù)加密調(diào)用虛擬機(jī)的相關(guān)數(shù)據(jù)以及功能執(zhí)行程序模塊的相關(guān)數(shù)據(jù)進(jìn)行加密壓縮的處理,但依然能夠規(guī)避通過(guò)網(wǎng)絡(luò)傳輸環(huán)境進(jìn)行數(shù)據(jù)交互帶來(lái)的數(shù)據(jù)泄露安全風(fēng)險(xiǎn)。
此外,作為更進(jìn)一步的改進(jìn)方案,在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)和業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)之間采用存儲(chǔ)介質(zhì)進(jìn)行數(shù)據(jù)交互的方式下,為了更好地確保數(shù)據(jù)保密安全,可以在存儲(chǔ)介質(zhì)中增加設(shè)置防泄密監(jiān)控程序,所述防泄密監(jiān)控程序記錄有指定許可的設(shè)備物理地址,用于讀取與存儲(chǔ)介質(zhì)建立數(shù)據(jù)連接的設(shè)備實(shí)際物理地址,例如讀取設(shè)備的mac(mediaaccesscontrol,介質(zhì)訪問(wèn)控制)地址;若讀取到的設(shè)備實(shí)際物理地址與指定許可的設(shè)備物理地址相一致,則允許建立數(shù)據(jù)連接的設(shè)備直接讀取存儲(chǔ)介質(zhì)中存儲(chǔ)的數(shù)據(jù);若讀取到的設(shè)備實(shí)際物理地址與指定許可的設(shè)備物理地址不一致,則隱藏存儲(chǔ)介質(zhì)中存儲(chǔ)的全部數(shù)據(jù)。由此,負(fù)責(zé)數(shù)據(jù)應(yīng)用支撐子系統(tǒng)開發(fā)任務(wù)和負(fù)責(zé)業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)的不同項(xiàng)目開發(fā)組之間,可以約定讀取存儲(chǔ)介質(zhì)中存儲(chǔ)數(shù)據(jù)的指定許可設(shè)備,并將指定許可設(shè)備的物理地址記錄在存儲(chǔ)介質(zhì)的防泄密監(jiān)控程序中,使得指定許可設(shè)備對(duì)存儲(chǔ)介質(zhì)能夠正常地進(jìn)行數(shù)據(jù)讀取,而針對(duì)非指定許可設(shè)備,則由防泄密監(jiān)控程序通過(guò)數(shù)據(jù)隱藏的方式,防止非指定許可設(shè)備對(duì)存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行讀取,避免涉密數(shù)據(jù)的泄露。此外,還可能面臨通過(guò)非法方式在非指定許可設(shè)備上連接存儲(chǔ)介質(zhì)后嘗試對(duì)隱藏?cái)?shù)據(jù)進(jìn)行讀取的手段,因此,為了進(jìn)一步防止這種途徑下的數(shù)據(jù)泄露,在存儲(chǔ)介質(zhì)的防泄密監(jiān)控程序中,還可以增加防泄密應(yīng)對(duì)功能,即在讀取到的設(shè)備實(shí)際物理地址與指定許可的設(shè)備物理地址不一致而隱藏存儲(chǔ)介質(zhì)中存儲(chǔ)的全部數(shù)據(jù)后,若建立數(shù)據(jù)連接的設(shè)備嘗試讀取隱藏?cái)?shù)據(jù),防泄密監(jiān)控程序則對(duì)存儲(chǔ)介質(zhì)中存儲(chǔ)的全部數(shù)據(jù)進(jìn)行刪除,徹底杜絕數(shù)據(jù)泄露的可能性。
綜上所述,本發(fā)明的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的分布式開發(fā)方法,采用了一種在基礎(chǔ)數(shù)據(jù)庫(kù)和數(shù)據(jù)應(yīng)用支撐子系統(tǒng)中進(jìn)行數(shù)據(jù)加密,并向各個(gè)業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)提供權(quán)限受限的數(shù)據(jù)調(diào)用的半封閉式開發(fā)模式,使得在數(shù)據(jù)保密需求的環(huán)境下,業(yè)務(wù)應(yīng)用子系統(tǒng)的開發(fā)任務(wù)能夠交由保密范圍以外的其它項(xiàng)目開發(fā)組進(jìn)行分布式的開發(fā),有利于解決數(shù)據(jù)保密要求與技術(shù)開發(fā)人員配備上的矛盾,從而能夠在兼顧保密要求的環(huán)境下更好地確保數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)進(jìn)度,降低開發(fā)工作難度和技術(shù)成本,且還能夠在數(shù)據(jù)應(yīng)用支撐子系統(tǒng)和業(yè)務(wù)應(yīng)用子系統(tǒng)開發(fā)任務(wù)之間的數(shù)據(jù)交互過(guò)程中,采用多層次的防泄密保護(hù)措施,增強(qiáng)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)分布式開發(fā)環(huán)境下的數(shù)據(jù)保密安全性,能夠有效削弱,甚至避免數(shù)據(jù)泄露風(fēng)險(xiǎn),很好地滿足涉密開發(fā)環(huán)境的要求。
最后說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的宗旨和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。