李瑞林LI Rui-lin
(廣西水利電力職業(yè)技術(shù)學(xué)院,南寧 530023)
目前,計算機存儲和操作數(shù)據(jù)的通用形式被稱為數(shù)據(jù)庫,數(shù)據(jù)庫系統(tǒng)三個發(fā)展階段分別為網(wǎng)狀數(shù)據(jù)模型、層次數(shù)據(jù)模型以及關(guān)系模型。其中計算機數(shù)據(jù)庫系統(tǒng)發(fā)展的重要標(biāo)志是關(guān)系模型數(shù)據(jù)庫。自從八十年代以來,數(shù)據(jù)庫系統(tǒng)的查詢語言應(yīng)用越來越廣泛,大規(guī)模的信息系統(tǒng)不斷的建立,計算機數(shù)據(jù)庫技術(shù)的發(fā)展從而使得數(shù)據(jù)庫的應(yīng)用更加的普遍。
當(dāng)代的企業(yè)基本上都建立用來存儲和管理各種業(yè)務(wù)數(shù)據(jù)的核心數(shù)據(jù)庫。對于大多合法用戶來說,這個核心數(shù)據(jù)庫是存儲關(guān)鍵信息的一種非常便捷的方式,而從攻擊者的角度來看,直接破壞數(shù)據(jù)庫所帶來的利益要比在網(wǎng)絡(luò)中探索數(shù)據(jù)帶來的利益大得多。數(shù)據(jù)庫的安全性包括操作系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)的安全性,它是和計算機系統(tǒng)的安全性是一樣的。
數(shù)據(jù)的安全就是數(shù)據(jù)庫安全管理的目標(biāo),具體包括以下五個方面的內(nèi)容:1)提供對數(shù)據(jù)共享,集中統(tǒng)一管理數(shù)據(jù);2)應(yīng)用程序?qū)?shù)據(jù)的訪問進(jìn)行簡化,使得在更為邏輯的層次上實現(xiàn)應(yīng)用程序?qū)?shù)據(jù)進(jìn)行訪問;3)把數(shù)據(jù)有效性問題進(jìn)行解決,從而使得數(shù)據(jù)的邏輯一致性得到保證;4)使得數(shù)據(jù)的獨立性得到保證,以及程序?qū)?shù)據(jù)及數(shù)據(jù)結(jié)構(gòu)的依賴得以減少;5)數(shù)據(jù)的安全性得到保證,數(shù)據(jù)所有者的利益在共享環(huán)境下得到保證。數(shù)據(jù)的集中存放和管理能夠保證數(shù)據(jù)庫安全性。數(shù)據(jù)庫安全的具體目標(biāo)就是提供充分的服務(wù),并且保證關(guān)鍵信息不被泄露。
1)數(shù)據(jù)安全性
保證數(shù)據(jù)安全性通常采用的措施有:(1)隔開數(shù)據(jù)庫中需要保護的部分和其他部分;(2)用戶采用的訪問控制方法應(yīng)該按照授權(quán)規(guī)則進(jìn)行,例如標(biāo)識與鑒別、強制存取、自主存取以及視圖機制等等;(3)存儲在數(shù)據(jù)庫的數(shù)據(jù)都必須經(jīng)過審計和加密。
2)數(shù)據(jù)完整性
數(shù)據(jù)的正確性、相容性以及有效性都屬于數(shù)據(jù)完整性。數(shù)據(jù)的輸入值與數(shù)據(jù)表對應(yīng)域的類型是一致的就稱為正確性;不同用戶使用的同一數(shù)據(jù)是一樣的就稱為相容性;而對于現(xiàn)實應(yīng)用中對該數(shù)值段的約束,數(shù)據(jù)庫中的理論數(shù)值能夠滿足就是所謂的有效性。要想保證數(shù)據(jù)的完整性,就必須對合法用戶使用不符合語義的數(shù)據(jù)輸入和輸出進(jìn)行防止。
3)并發(fā)控制
數(shù)據(jù)庫中的信息資源是可以供多用戶共享的,并且還能夠允許多個用戶能夠同時對數(shù)據(jù)庫的系統(tǒng)進(jìn)行使用,這也就是所謂的多用戶數(shù)據(jù)庫系統(tǒng)。在這種數(shù)據(jù)庫系統(tǒng)中,同一時刻運行的用戶事務(wù)可達(dá)數(shù)百個。當(dāng)數(shù)據(jù)庫被多個用戶同一時刻進(jìn)行并發(fā)操作時,那么多個事務(wù)同時存取同一數(shù)據(jù)的情況就會發(fā)生,導(dǎo)致不正確的數(shù)據(jù)存取的發(fā)生,使得數(shù)據(jù)的一致性也受到的破壞,因此就必須進(jìn)行并發(fā)控制。
4)故障恢復(fù)
目前,保護數(shù)據(jù)庫系統(tǒng)免受破壞的措施有很多,它能夠保證數(shù)據(jù)庫的安全性和完整性不被破壞以及并發(fā)事務(wù)能夠正確執(zhí)行,但是計算機的硬件故障、操作人員的事務(wù)這些是不能夠進(jìn)行避免的。而數(shù)據(jù)庫中數(shù)據(jù)的正確性都會受到它的影響,甚至有時會使得數(shù)據(jù)庫受到破壞,導(dǎo)致數(shù)據(jù)庫中的部分或者全部數(shù)據(jù)的丟失。故障恢復(fù)的功能就是能夠?qū)崿F(xiàn)數(shù)據(jù)庫從錯誤狀態(tài)向某一已知的正確狀態(tài)方向進(jìn)行恢復(fù)。
操作系統(tǒng)存在的問題主要在于病毒、后門、數(shù)據(jù)庫系統(tǒng)和操作系統(tǒng)的關(guān)聯(lián)性方面。首先,在病毒方面,特洛伊木馬程序有可能存在于操作系統(tǒng)中從而也極大的威脅了數(shù)據(jù)庫系統(tǒng)。一個特洛伊木馬程序?qū)θ腭v程序的密碼進(jìn)行修改,當(dāng)密碼更新之后,信息的密碼也會被入侵者獲得;其次,在操作系統(tǒng)的后面方面,雖然數(shù)據(jù)庫管理員由于數(shù)據(jù)庫系統(tǒng)的特征參數(shù)方便了,但是同時后門在在數(shù)據(jù)庫服務(wù)器主機操作系統(tǒng)中出現(xiàn)了,因此,通過后門黑客就會對訪問數(shù)據(jù)庫;再次,較強的關(guān)聯(lián)性存在于數(shù)據(jù)庫系統(tǒng)和操作系統(tǒng)之間。操作系統(tǒng)所具有的其中一個功能就是文件管理。文件管理可以對各類文件包括數(shù)據(jù)庫文件的授權(quán)通過利用存取控制進(jìn)行讀寫和執(zhí)行等,而且對于用戶登錄和口令鑒別的控制,操作系統(tǒng)的監(jiān)控程序也能進(jìn)行,因此,操作系統(tǒng)和硬件設(shè)備所提供的環(huán)境就能夠保證數(shù)據(jù)庫系統(tǒng)的安全性。
用戶對信息網(wǎng)絡(luò)安全重視程度不夠,沒有真正意識到數(shù)據(jù)庫安全的重要性,沒有落實安全管理措施,從而使得安全按事件頻頻發(fā)生,這些都是由于管理的忽視導(dǎo)致的安全問題。適當(dāng)限制對數(shù)據(jù)庫服務(wù)器的訪問權(quán)限肯定能夠減少攻擊面,但這并不意味著可以不用修復(fù)補丁。很多調(diào)查都發(fā)現(xiàn),數(shù)據(jù)庫管理員沒有定期修復(fù)數(shù)據(jù)庫系統(tǒng)的補丁。對于安全來說,定期修復(fù)補丁絕對是有必要的,這樣不至于因為幾個月前未修復(fù)的漏洞而受到攻擊。建立一個測試環(huán)境,然后修復(fù)補丁,確認(rèn)補丁修復(fù),然后修復(fù)生產(chǎn)環(huán)境的補丁。從實際中可以看出,引起安全的問題的原因主要有未修補系統(tǒng)安全漏洞以及登錄密碼過于簡單或未進(jìn)行修改,由此可以看出,用戶對相關(guān)的安全防范意識和基本安全防范常識的缺乏。
雖然關(guān)系數(shù)據(jù)庫系統(tǒng)應(yīng)用時間較長,特性較強大,產(chǎn)品也較成熟,但是實際中并沒有在操作系統(tǒng)和現(xiàn)在普遍使用的數(shù)據(jù)庫系統(tǒng)體現(xiàn)出其應(yīng)該具有的某些特征,尤其是那些較為重要的安全特性,由此可見,大多數(shù)的關(guān)系數(shù)據(jù)庫系統(tǒng)的成熟度還是不夠。
系統(tǒng)提供的最外層安全保護措施就是用戶標(biāo)識與鑒別。用戶標(biāo)識與鑒別的方法是非常多的,往往在一個系統(tǒng)中是多種方法同時使用的,從而使得系統(tǒng)的安全性更強。比較常用的方法有:用戶身份的表明用輸入用戶名來進(jìn)行;用戶身份通過回答口令進(jìn)行標(biāo)識;用戶身份通過回答對隨機數(shù)的運算結(jié)構(gòu)進(jìn)行表明等等??傊祟惙绞皆诩訌姲踩耐瑫r,也增加了成本,因此,一般都是大型企業(yè)用戶使用。
對于安全的重要方面及其與系統(tǒng)行為的關(guān)系都可以通過安全模型來進(jìn)行準(zhǔn)確的描述,安全模型建立的主要目的就是對成功實現(xiàn)關(guān)鍵安全需求的理解層次的提高。安全模型可以分為以下兩個方面:1)多級安全模型。多級安全模型最先是在軍用系統(tǒng)和數(shù)據(jù)庫的安全保密中被應(yīng)用的,它能夠使不同密級包含不同的信息。通常情況下,密級由低到高可分為:秘密級、機密級和絕密級。需要注意的是:每一密級的信息能夠被使用的人是:該密級或者高于該密級權(quán)限的人員。2)多邊安全模型。在數(shù)據(jù)庫安全措施中它又是一項較重要的,對于信息的橫向泄露,多邊安全模型就能夠?qū)ζ溥M(jìn)行阻止,從而使得數(shù)據(jù)庫信息安全在最大程度上受到保護。
確保具有數(shù)據(jù)庫使用權(quán)的用戶正常訪問數(shù)據(jù)庫這就是訪問控制的目的,訪問控制是最重要的數(shù)據(jù)庫安全策略之一。訪問控制的功能就是為了防止非法的主體進(jìn)入受保護的網(wǎng)絡(luò)資源、允許合法用戶訪問受保護的網(wǎng)絡(luò)資源、防止合法的用戶對受保護的網(wǎng)絡(luò)資源進(jìn)行非授權(quán)的訪問。計算機系統(tǒng)活動主要是在主體與客體之間進(jìn)行的。主體對客體訪問的合法性是通過計算機安全的核心問題得到保證的,也就是說,通過對數(shù)據(jù)的輸入、修改、刪除等管理,來使得主體對客體的訪問確保是授權(quán)的,對于非授權(quán)的訪問進(jìn)行拒絕,從而使得信息的機密性、可用性和完整性得到保證。作為資源訪問處理的一部分——訪問控制,它主要非為自主訪問控制和強制訪問控制。自主訪問控制,是指由用戶有權(quán)對自身所創(chuàng)建的訪問對象(文件、數(shù)據(jù)表等)進(jìn)行訪問,并可將對這些對象的訪問權(quán)授予其他用戶和從授予權(quán)限的用戶收回其訪問權(quán)限。這種資源訪問可以實現(xiàn)創(chuàng)建者可以隨意指定可以進(jìn)行訪問的人,那么用戶就可以選擇和其他用戶共享資源。強制訪問控制,是指由系統(tǒng)(通過專門設(shè)置的系統(tǒng)安全員)對用戶所創(chuàng)建的對象進(jìn)行統(tǒng)一的強制性控制,按照規(guī)定的規(guī)則決定哪些用戶可以對哪些對象進(jìn)行什么樣操作系統(tǒng)類型的訪問,即使是創(chuàng)建者用戶,在創(chuàng)建一個對象后,也可能無權(quán)訪問該對象。在這種訪問控制中,不同的安全屬性被分配到了主客體上,對于客體的安全屬性用戶是不能改變的,訪問權(quán)限只能由系統(tǒng)管理員進(jìn)行確定,主體是否能夠訪問客體是系統(tǒng)通過比較客體和主體的安全屬性來決定的。
在數(shù)據(jù)庫安全管理系統(tǒng)中審計是一項較為重要的功能。安全審計應(yīng)為審計管理員提供一組可進(jìn)行分析的管理數(shù)據(jù),從而能夠使違反安全方案的事件的發(fā)生地被發(fā)現(xiàn)。很多企業(yè)僅用審計功能以努力提高數(shù)據(jù)庫服務(wù)器的性能,如果性能是企業(yè)關(guān)注的主要問題的話,那么可以考慮使用數(shù)據(jù)庫活動監(jiān)控解決方案來為企業(yè)提供審計和其他功能。關(guān)閉審計功能會加大調(diào)查數(shù)據(jù)泄漏原因的難度,并且會影響企業(yè)的合規(guī)。對于安全出現(xiàn)的漏洞可以通過安全審計進(jìn)行添堵。系統(tǒng)在運行時將數(shù)據(jù)庫的所有操作記錄在審計日志中,這樣數(shù)據(jù)庫管理員就可以利用審計跟蹤非法存取數(shù)據(jù)信息,能夠找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。審計安全使得數(shù)據(jù)的物理完整性得到了保證。
一般情況下,訪問控制的粒度級別決定了安全敏感標(biāo)記的級別,可見二者關(guān)系非常密切。計算機中強制訪問控制的依據(jù)就是敏感標(biāo)識。訪問控制可以達(dá)到的最小單位就是訪問控制的粒度。一般情況下,強制訪問控制下安全級別都被標(biāo)記在那個單位上。對于主體而言,數(shù)據(jù)庫的訪問控制中,粒度一般位于用戶一級。對于客體而言,表一級一般為自主訪控制的粒度,此時的客體包括表、視圖、存儲過程等等。
數(shù)據(jù)安全問題存在于所有的計算機系統(tǒng)中,它并非只是數(shù)據(jù)庫系統(tǒng)獨有的特性。數(shù)據(jù)庫安全,和其他所有安全問題一樣,都是圍繞減輕風(fēng)險的,而不是消除風(fēng)險,你不可能消除所有的風(fēng)險,但是你能夠控制這些風(fēng)險,以確保這些安全風(fēng)險不會給企業(yè)帶來麻煩。數(shù)據(jù)庫作為數(shù)據(jù)的倉庫,它除了要使數(shù)據(jù)共享得到保證以外,還要使數(shù)據(jù)安全性也要得到保證。數(shù)據(jù)庫的安全與系統(tǒng)安全以及網(wǎng)絡(luò)安全是密不可分的,在很多情況下,數(shù)據(jù)庫安全中都會用到系統(tǒng)安全和網(wǎng)絡(luò)安全技術(shù)。數(shù)據(jù)庫安全技術(shù)在很大程度上對數(shù)據(jù)庫安全管理具有很大的現(xiàn)實意義。
[1] 徐婷, 楊欣榮. 數(shù)據(jù)庫安全技術(shù)的理論研究[J]. 科技情報開發(fā)與經(jīng)濟, 2007, (04).
[2] 朱良根, 雷振甲, 張玉清. 數(shù)據(jù)庫安全技術(shù)研究[J]. 計算機應(yīng)用研究, 2004, (09).
[3] 李社宗, 趙海青, 馬青榮, 張志紅. 數(shù)據(jù)庫安全技術(shù)及其應(yīng)用[M]. 2003, (01).
[4] 劉啟原, 劉怡. 數(shù)據(jù)庫與信息系統(tǒng)的安全[M]. 北京: 科學(xué)出版社, 2000.
[5] 王能斌.數(shù)據(jù)庫系統(tǒng)教程[M].北京:電子工業(yè)出版社,2002.
[6] 許婷, 楊新榮. 數(shù)據(jù)庫安全技術(shù)理論研究[J]. 科技情報開發(fā)與經(jīng)濟, 2007, (04).
[7] 李海泉, 李健. 計算機網(wǎng)絡(luò)安全與加密技術(shù)[M]. 北京:科學(xué)出版社, 2001.