文/趙文廣 張蕊 趙丹
中國人民大學審計保證數(shù)據(jù)完整性
文/趙文廣 張蕊 趙丹
數(shù)據(jù)庫安全問題是一個永遠發(fā)展的問題,理想的做法是從硬件、軟件及管理三個層面來加強防護。
中國人民大學數(shù)字校園建設(shè)經(jīng)歷了“數(shù)字人大”、“微人大”兩個階段。十幾年來,學校在應(yīng)用系統(tǒng)建設(shè)上一直秉承一個數(shù)據(jù)庫的原則,即所有應(yīng)用系統(tǒng)共享一個統(tǒng)一數(shù)據(jù)庫實例。數(shù)據(jù)庫系統(tǒng)硬件拓撲如圖1。
圖1 數(shù)據(jù)庫系統(tǒng)硬件拓撲
所有節(jié)點從服務(wù)器、存儲到磁盤陣列、SAN交換設(shè)備均有冗余,完全屏蔽了單點故障。數(shù)據(jù)庫服務(wù)器部署在獨立的安全網(wǎng)段,通過防火墻與校園網(wǎng)其他網(wǎng)段分開。防火墻的訪問控制保證數(shù)據(jù)庫服務(wù)器只能被指定信任的應(yīng)用服務(wù)器訪問。從網(wǎng)絡(luò)層將數(shù)據(jù)庫服務(wù)器被攻擊的可能性降到最低。
兩臺數(shù)據(jù)庫服務(wù)器,組成雙活結(jié)構(gòu),數(shù)據(jù)庫采用Oracle RAC架構(gòu)。Oracle RAC中文譯為“實時應(yīng)用集群”,當應(yīng)用規(guī)模需要擴充時可以按需擴展,以保證系統(tǒng)的性能。Oracle RAC實現(xiàn)多節(jié)點負載均衡,大大提高數(shù)據(jù)庫的高可靠、高可用及可維護性,同時也增加了數(shù)據(jù)庫性能。
高速SAN存儲通過光纖交換機與服務(wù)器相聯(lián)接,組成了穩(wěn)定、安全高速的光纖數(shù)據(jù)交換網(wǎng)絡(luò)。存儲陣列規(guī)劃成RAID 1+0方式,最大程度地消除存儲磁盤損壞對數(shù)據(jù)庫的影響。
數(shù)據(jù)庫安全問題分類
數(shù)據(jù)庫安全問題可以劃分為外部與內(nèi)部兩個部分:一部分是指系統(tǒng)的硬件設(shè)備能夠安全地運行,稱為外部安全;另一部分指硬件、軟件能夠?qū)τ脩魯?shù)據(jù)訪問、數(shù)據(jù)管理、數(shù)據(jù)的操作進行檢查控制,稱為內(nèi)部安全。
外部安全
外部安全我們常從環(huán)境、設(shè)備的角度,利用各種安全措施支持數(shù)據(jù)庫的安全運行。常用的措施如下:
1.機房環(huán)境安全
機房安全是指對數(shù)據(jù)庫負責的組織,通過制定和實施適當?shù)墓芾泶胧﹣肀U蠑?shù)據(jù)庫運行的機房環(huán)境安全。這些措施如:機房隔離、專人專管、應(yīng)急斷電、溫度和濕度、防水和防潮等保護。
2.設(shè)備安全
設(shè)備安全是組織通過制定和實施適當?shù)墓芾泶胧﹣肀U蠑?shù)據(jù)庫使用的設(shè)備安全,這些設(shè)備如數(shù)據(jù)庫所用的計算機、存儲、網(wǎng)絡(luò)、數(shù)據(jù)備份設(shè)備等。
內(nèi)部安全
內(nèi)部安全常通過完善管理制度、規(guī)范操作流程等方面,保障數(shù)據(jù)庫安全運行,通??紤]的因素如下:
1.操作系統(tǒng)安全
操作系統(tǒng)安全是組織通過制定和實施適當?shù)墓芾泶胧﹣肀U蠑?shù)據(jù)庫運行的底層操作系統(tǒng)的安全。例如:操作系統(tǒng)只安裝數(shù)據(jù)庫及其相關(guān)軟件、存儲數(shù)據(jù)庫的目錄和文件只允許管理員訪問、審計關(guān)鍵的操作系統(tǒng)行為等。
2.運行安全
運行安全是組織通過制定和實施適當?shù)墓芾泶胧﹣碇螖?shù)據(jù)庫的安全運行。這些措施包括:對運行的數(shù)據(jù)庫定期進行查毒、漏洞掃描、運行監(jiān)控等。在此基礎(chǔ)上,對檢測出的安全問題應(yīng)給出應(yīng)對措施。
3.訪問安全
訪問安全是組織通過制定和實施適當?shù)墓芾泶胧﹣肀U蠑?shù)據(jù)庫訪問者身份及操作的安全。例如:對網(wǎng)絡(luò)數(shù)據(jù)庫系統(tǒng)的用戶進行身份鑒別,保證每個用戶是合法且可識別的;數(shù)據(jù)庫系統(tǒng)的訪問控制,即控制主體對客體的訪問,拒絕非授權(quán)訪問。
建立備份機制,數(shù)據(jù)庫從多個層面進行備份。首先在異地機房部署備份存儲,與數(shù)據(jù)庫存儲之間進行存儲級的備份;其次每日進行數(shù)據(jù)庫級備份。確保一旦災(zāi)難發(fā)生時,可以通過磁盤鏡像、數(shù)據(jù)庫備份文件和數(shù)據(jù)庫在線日志這三種方式來快速恢復(fù)數(shù)據(jù)庫到原來的狀態(tài),以保持數(shù)據(jù)的完整性和一致性?;蛘咴谥鲾?shù)據(jù)庫系統(tǒng)崩潰,異地備份數(shù)據(jù)庫可以直接承擔主數(shù)據(jù)庫角色,迅速接管主數(shù)據(jù)庫的業(yè)務(wù),恢復(fù)應(yīng)用系統(tǒng)的正常運行。
4. 數(shù)據(jù)庫漏洞掃描
通過專業(yè)軟件對當前的數(shù)據(jù)庫系統(tǒng)進行自動化安全評估,主動發(fā)現(xiàn)當前數(shù)據(jù)庫系統(tǒng)的安全問題,提供對數(shù)據(jù)庫的安全狀況進行持續(xù)化監(jiān)控,保持數(shù)據(jù)庫的安全健康狀態(tài)。
發(fā)現(xiàn)外部黑客攻擊漏洞,防止外部攻擊:實現(xiàn)非授權(quán)的從外到內(nèi)的檢測;對目標數(shù)據(jù)庫的安全性作深入的探測分析;收集外部人員可以利用的數(shù)據(jù)庫漏洞的詳細信息。
分析內(nèi)部不安全配置,防止越權(quán)訪問:通過只讀賬戶,實現(xiàn)由內(nèi)到外的檢測;提供現(xiàn)有數(shù)據(jù)的漏洞透視圖和數(shù)據(jù)庫配置安全評估;避免內(nèi)外部的非授權(quán)訪問。
5. 數(shù)據(jù)庫加密
對數(shù)據(jù)庫內(nèi)敏感類數(shù)據(jù)進行加密,從而改變數(shù)據(jù)信息,并為用戶提供可加密的應(yīng)用信息;對加密的相關(guān)數(shù)據(jù)信息,非授權(quán)用戶不能閱讀,這樣可以從根本上保障網(wǎng)絡(luò)數(shù)據(jù)的安全性。為了使數(shù)據(jù)庫加密更加安全,其安全的密碼應(yīng)盡可能復(fù)雜,難以破解。
6. 用戶操作管理權(quán)限
嚴格管理用戶操作權(quán)限,權(quán)限分發(fā)時遵循最小權(quán)限原則,僅給操作者賦予完成工作所需最小權(quán)限。數(shù)據(jù)庫訪問也要受到嚴格監(jiān)視,確保操作者權(quán)限僅用于經(jīng)授權(quán)的操作。操作者離職時需立即撤銷已分配給用戶的權(quán)限。
7. 審計跟蹤和攻擊檢查
審計功能在系統(tǒng)運行時,將自動對數(shù)據(jù)庫的所有操作記錄在審計日志中,攻擊監(jiān)查系統(tǒng)則是根據(jù)審計數(shù)據(jù)分析檢測內(nèi)部和外部攻擊者的攻擊企圖,再現(xiàn)導(dǎo)致系統(tǒng)現(xiàn)狀事件,以發(fā)現(xiàn)系統(tǒng)安全的弱點。日志記錄和審計對于事后的檢查十分有效,保證了數(shù)據(jù)的物理完整性。
數(shù)據(jù)庫安全問題也是一個永遠發(fā)展的問題,理想的做法是從硬件、軟件及管理三個層面來加強防護。一方面硬件及數(shù)據(jù)庫技術(shù)的提高,可以讓我們的數(shù)據(jù)庫安全方案更加優(yōu)化;別一方面隨著入侵者的手段的不斷提高,也使我們的數(shù)據(jù)庫安全面臨更加嚴峻的挑戰(zhàn)。只有不斷地加強研究和投入,才能持續(xù)保障網(wǎng)絡(luò)數(shù)據(jù)庫的安全性。
(責編:王左利)
(作者單位為中國人民大學)