孫卓敬,鄭忠霞
1.棗莊科技職業(yè)學(xué)院,山東 滕州 277500
2.中國海洋大學(xué)信息科學(xué)與工程學(xué)院,山東 青島 266003
數(shù)據(jù)庫是按某種規(guī)則組織的存儲數(shù)據(jù)的集合,換句話說,數(shù)據(jù)庫是由信息實體和這些實體之間的關(guān)系組成的,這些關(guān)系和實體在數(shù)據(jù)庫內(nèi)以某些物理的方式(記錄和指針)表示。數(shù)據(jù)庫的安全性是指保護(hù)數(shù)據(jù)以防止因不合法的使用而造成數(shù)據(jù)的泄密和破壞。這就要采取一定的安全保護(hù)措施.在數(shù)據(jù)庫中,系統(tǒng)用檢查口令等手段來檢查用戶身份,合法的用戶才能進(jìn)入數(shù)據(jù)庫系統(tǒng)。當(dāng)用戶對數(shù)據(jù)庫執(zhí)行操作時,系統(tǒng)自動檢查用戶是否有權(quán)限執(zhí)行這些操作。其實,數(shù)據(jù)安全主要包括數(shù)據(jù)存儲和傳輸兩方面的安全。存儲安全包括存儲環(huán)境安全、存儲介質(zhì)安全、存儲管理等方面的安全;傳輸安全包括信息錯誤發(fā)送、非法攔截、泄露、缺損等內(nèi)容。
數(shù)據(jù)篡改指的是對數(shù)據(jù)庫中的數(shù)據(jù)未經(jīng)授權(quán)就進(jìn)行修改或刪除,使其失去原來的真實性。篡改是人為因素產(chǎn)生的,其威脅源可以是用戶,也可以是程序,一般而言,發(fā)生這種人為篡改的原因主要有以下幾種:1)個人利益的驅(qū)動;2)隱藏證據(jù);3)惡作??;4)無知。
網(wǎng)絡(luò)系統(tǒng)中數(shù)據(jù)的損壞是數(shù)據(jù)庫安全性所面對的另一個威脅。其表現(xiàn)的形式是數(shù)據(jù)表和整個數(shù)據(jù)庫部分或全部被刪除、移走或破壞。產(chǎn)生損壞的原因主要有破壞、惡作劇和病毒。
數(shù)據(jù)竊取是一個嚴(yán)重的問題,可能當(dāng)它已經(jīng)損害到用戶的業(yè)務(wù)時仍難以發(fā)現(xiàn)。導(dǎo)致竊取的原因如下:1)被竊取的數(shù)據(jù)可能比想象中的更有價值;2)不滿和將要離開的員工的惡意行為;3)工商業(yè)間諜竊取數(shù)據(jù)。
數(shù)據(jù)庫的故障是指從保護(hù)安全的角度出發(fā),數(shù)據(jù)庫系統(tǒng)中會發(fā)生的各種故障。這些故障主要包括:事務(wù)內(nèi)部的故障、系統(tǒng)故障、介質(zhì)故障和計算機(jī)病毒與黑客等;1)事務(wù)(Transaction)內(nèi)部的故障多發(fā)生于數(shù)據(jù)的不一致性;2)系統(tǒng)故障又稱軟故障是指系統(tǒng)突然停止運(yùn)行時造成的數(shù)據(jù)庫故障。;3)介質(zhì)故障又稱硬故障,主要指外存故障;4)病毒所致的故障;5)黑客所致的故障 。
在一般計算機(jī)系統(tǒng)中,安全措施是一級一級層層設(shè)置的。用戶要進(jìn)入計算機(jī)系統(tǒng),系統(tǒng)首先根據(jù)輸入的用戶標(biāo)識進(jìn)行用戶身份鑒定,只有合法的用戶才準(zhǔn)許進(jìn)入計算機(jī)系統(tǒng)。對已經(jīng)進(jìn)入系統(tǒng)的用戶,DBMS要進(jìn)行存取控制,只允許用戶執(zhí)行合法操作。操作系統(tǒng)一級也會有自己的保護(hù)措施。數(shù)據(jù)最后還可以以密碼形式存儲在數(shù)據(jù)庫中。數(shù)據(jù)庫的安全機(jī)制如下圖1所示:
圖1 安全控制模型
1)用戶標(biāo)識與鑒定:這是DBS提供的最外層安全保護(hù)措施,是由系統(tǒng)提供一定的方式讓用戶標(biāo)識自己的名字或身份,系統(tǒng)內(nèi)部記錄這些數(shù)據(jù),每次用戶請求系統(tǒng)進(jìn)行核對,以鑒定此用戶是否有權(quán)訪問。一般,用戶標(biāo)識包括:用戶名(用戶標(biāo)識號)和口令;用戶標(biāo)識和鑒定可以重復(fù)多次(Oracle允許3次登錄)。用戶登錄成功才是數(shù)據(jù)庫的合法用戶,才能與數(shù)據(jù)庫建立連接。
2)存取控制:存取控制機(jī)制主要包括兩部分:定義用戶權(quán)限,并將用戶權(quán)限登記到數(shù)據(jù)字典中。在數(shù)據(jù)庫系統(tǒng)中對存取權(quán)限的定義稱為授權(quán)(Authorization)。這些授權(quán)定義經(jīng)過編譯后存放在數(shù)據(jù)字典中,被稱作“安全規(guī)則”或“授權(quán)規(guī)則”:(1)用戶分類:一般可對數(shù)據(jù)庫的用戶分為四類:系統(tǒng)用戶(或DBA),數(shù)據(jù)對象的屬主(Owner),一般用戶,公共用戶(Public);(2)存取權(quán)限:用戶使用數(shù)據(jù)庫的方式稱為權(quán)限。權(quán)限分為如下兩類:訪問數(shù)據(jù)權(quán)限,修改數(shù)據(jù)庫模式權(quán)限
3)審計:把用戶對數(shù)據(jù)庫的所有操作自動記錄下來放入審計日志(Audit Log)中。DBA可以利用審計跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)庫數(shù)據(jù)的人、時間和內(nèi)容等。審計通常是很費(fèi)時間和空間的,所以DBMS往往都將其作為可選特征,允許DBA根據(jù)應(yīng)用對安全性的要求,靈活地打開或關(guān)閉審計功能。審計功能一般主要用于安全性要求較高的部門。審計功能是DBMS達(dá)到C2級以上安全措施必不可少的一項指標(biāo)。
4)數(shù)據(jù)加密:把數(shù)據(jù)用密碼形式存儲在磁盤上。為了更好地保證數(shù)據(jù)庫的安全性,用密碼存儲口令、數(shù)據(jù),對遠(yuǎn)程用戶的信息用密碼傳輸防止中途非法截獲等。數(shù)據(jù)庫中的數(shù)據(jù)以密碼形式存放和傳輸,使用時用戶用自己掌握的密鑰通過解密程序把它解碼為明文數(shù)據(jù)。這樣可以保證只有掌握了密鑰的用戶才能訪問數(shù)據(jù),而且即使數(shù)據(jù)被非法地從數(shù)據(jù)庫中竊取,或者在數(shù)據(jù)的傳輸過程中被截取,竊取者也無法知道密碼數(shù)據(jù)的含義。
隨著計算機(jī)技術(shù)的飛速發(fā)展,在信息系統(tǒng)中存有重要的數(shù)據(jù)、檔案或歷史紀(jì)錄,不論是對企業(yè)用戶,還是對個人用戶來講都是至關(guān)重要的,所以無論是為了保障生產(chǎn)、銷售、開發(fā)的正常運(yùn)行,必須采取先進(jìn)、有效的措施保障數(shù)據(jù)庫的安全,以防范于未然。
[1]崔巍.數(shù)據(jù)庫系統(tǒng)及應(yīng)用[M].2版.北京:高等教育出版社,147-166.
[2]張靜,許焱平.基于SQLServer的數(shù)據(jù)庫安全初探[J].福建電腦,2005(8):86.
[3]陳志泊,李冬梅,王春玲.數(shù)據(jù)庫原理及應(yīng)用教程[M].北京:人民郵電出版社,2003.
[4]趙森,蘇慶,肖蓉.中文SQLServer2005程序設(shè)計教程[M].北京:冶金工業(yè)出版社,2006.