摘 要:隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,數(shù)據(jù)庫的應(yīng)用得到了廣泛推廣,并滲入到各個(gè)行業(yè)領(lǐng)域。但是,數(shù)據(jù)的安全問題、私隱數(shù)據(jù)的防盜和防篡改問題越來越普遍,已經(jīng)引起人們的高度重視。數(shù)據(jù)系統(tǒng)作為信息的聚集核心,涉及到很多的敏感數(shù)據(jù),如何控制數(shù)據(jù)安全問題,有效加強(qiáng)數(shù)據(jù)庫的安全,實(shí)現(xiàn)數(shù)據(jù)的保密、完整和有效,成為研究學(xué)者們的重點(diǎn)問題之一。本文結(jié)合了Oracle數(shù)據(jù)庫的應(yīng)用情況,對(duì)數(shù)據(jù)庫的安全技術(shù)策略及管理應(yīng)用作出深入分析。
關(guān)鍵詞:Oracle;數(shù)據(jù)庫;系統(tǒng);安全;技術(shù)
中圖分類號(hào):TP311.138
數(shù)據(jù)庫系統(tǒng)的建設(shè)和安全已經(jīng)隨著數(shù)據(jù)庫的發(fā)展而得到國家的重視。數(shù)據(jù)庫應(yīng)用到社會(huì)各個(gè)領(lǐng)域中,受到國家政府機(jī)關(guān)、企事業(yè)單位、軍隊(duì)等部門的重點(diǎn)關(guān)注。數(shù)據(jù)庫系統(tǒng)不僅與人們的生活息息相關(guān),甚至深入到商業(yè)協(xié)作的領(lǐng)域。Oracle數(shù)據(jù)庫是全世界最為應(yīng)用廣泛的數(shù)據(jù)庫管理系統(tǒng),它是一個(gè)完備關(guān)系的產(chǎn)品。
1 數(shù)據(jù)庫系統(tǒng)的安全定義
數(shù)據(jù)庫系統(tǒng)的安全分為四部分:數(shù)據(jù)內(nèi)容的完整性;保密性;一致性和可用性。
數(shù)據(jù)內(nèi)容的完整性是指阻止非法數(shù)據(jù)進(jìn)入數(shù)據(jù)庫內(nèi),由開發(fā)人員定義數(shù)據(jù)的完整性,規(guī)定數(shù)據(jù)表中的數(shù)據(jù)內(nèi)容。數(shù)據(jù)完整性保證了數(shù)據(jù)的準(zhǔn)確性和有效性,防止非法數(shù)據(jù)進(jìn)入到數(shù)據(jù)庫內(nèi)產(chǎn)生無效操作。數(shù)據(jù)的完整性十分關(guān)鍵,關(guān)系到能否真實(shí)的輸入數(shù)據(jù)信息。
數(shù)據(jù)的保密性是指數(shù)據(jù)庫的信息具有隱私權(quán),不能被非法、非授權(quán)人員私自獲取。
數(shù)據(jù)的一致性是使每個(gè)用戶看到的數(shù)據(jù)是統(tǒng)一的。
可用性是數(shù)據(jù)信息保證對(duì)已授權(quán)用戶進(jìn)行開放,而不會(huì)因?yàn)槿藶榛蚱渌匀辉蚨P(guān)閉授權(quán)用戶的使用權(quán)[1]。
2 Oracle數(shù)據(jù)庫系統(tǒng)安全問題
Oracle是一種關(guān)系型的數(shù)據(jù)庫管理系統(tǒng),其功能非常強(qiáng)大,在數(shù)據(jù)庫中應(yīng)用十分廣泛,由其大型數(shù)據(jù)庫的管理系統(tǒng),基本離不開Oracle。正常使用的情況下,Oracle數(shù)據(jù)庫會(huì)有效保障數(shù)據(jù)的安全性及穩(wěn)定性,可以為用戶提供準(zhǔn)確信息,但Oracle數(shù)據(jù)庫面臨的安全威脅,也是不可忽視的重要問題。
例如用戶非法對(duì)數(shù)據(jù)庫進(jìn)行訪問,或使用合法權(quán)限從事非法目的,攻擊Oracle數(shù)據(jù)庫TNS Listener和調(diào)度器或數(shù)據(jù)庫通信協(xié)議受到威脅。這些問題都將影響Oracle數(shù)據(jù)庫內(nèi)的數(shù)據(jù)正常使用,甚至可以破壞掉數(shù)據(jù)庫內(nèi)容,使數(shù)據(jù)庫內(nèi)容丟失、系統(tǒng)癱瘓等狀態(tài)發(fā)生。所以O(shè)racle數(shù)據(jù)庫的安全性對(duì)于整個(gè)系統(tǒng)來講,是最為重要的安全部分[2]。
3 Oracle數(shù)據(jù)庫系統(tǒng)安全技術(shù)策略
3.1 網(wǎng)絡(luò)系統(tǒng)層次的安全策略
(1)設(shè)立密碼。網(wǎng)絡(luò)系統(tǒng)中,網(wǎng)上的遠(yuǎn)程用戶需要通過密碼方式進(jìn)入數(shù)據(jù)庫,輸入密碼時(shí),進(jìn)行加密設(shè)置,這樣能夠避免密碼被他人盜用;
(2)對(duì)于非法用戶進(jìn)行拒絕訪問。設(shè)置由遠(yuǎn)程用戶訪問DBA來對(duì)網(wǎng)絡(luò)上的DBA權(quán)限的控制;
(3)利用防火墻技術(shù)。防火墻技術(shù)作為系統(tǒng)的第一道安全防線,可以監(jiān)控可信任網(wǎng)絡(luò)和未知網(wǎng)絡(luò)之間的訪問通道,可以在網(wǎng)絡(luò)系統(tǒng)的內(nèi)部形成一道防線,阻擋外來非法訪問,從而防止內(nèi)部信息的丟失。
3.2 操作系統(tǒng)的層次安全策略
(1)密碼保障。用戶登錄時(shí)需要輸入密碼口令,這是第一道用戶訪問防護(hù)驗(yàn)證;
(2)賬戶鎖定保護(hù)。用戶需要申請(qǐng)賬戶后才是合法用戶,才可以登錄系統(tǒng);
(3)用戶權(quán)利。用戶登錄后,有訪問所使用的賬戶、口令、訪問權(quán)限等方面;
(4)訪問權(quán)限。規(guī)定了用戶的的訪問權(quán)限。
3.3 數(shù)據(jù)庫管理系統(tǒng)層次的安全技術(shù)
數(shù)據(jù)庫在操作系統(tǒng)中都是以文件形式進(jìn)行管理,非法入侵者可以利用網(wǎng)絡(luò)系統(tǒng)漏洞或直接利用OS來進(jìn)行對(duì)數(shù)據(jù)庫內(nèi)容的更該,為保證前兩道安全防護(hù)被攻破后仍然能使數(shù)據(jù)庫安全運(yùn)行,需要對(duì)數(shù)據(jù)庫管理系統(tǒng)制定一套完整的、強(qiáng)大的、有力的安全機(jī)制[3]。
計(jì)算機(jī)系統(tǒng)如果發(fā)生故障,將會(huì)影響到數(shù)據(jù)庫的正常操作,也會(huì)對(duì)數(shù)據(jù)庫的準(zhǔn)確性造成影響,甚至破壞數(shù)據(jù)庫,使內(nèi)容丟失。因此,對(duì)于如何保證Oracle數(shù)據(jù)庫的安全性和穩(wěn)定性,目前應(yīng)該采取以下的安全防范措施:
(1)權(quán)限控制。Oracle數(shù)據(jù)庫可以通過用戶角色(Role)和用戶的權(quán)限(Privilage)進(jìn)行授權(quán)(Grant)和回收(Revoke)操作,可以對(duì)用戶的權(quán)限進(jìn)行有效控制。用戶的該有權(quán)限只能對(duì)其他用戶的信息查看而不能修改;用戶的權(quán)限只用于Oracle數(shù)據(jù)庫系統(tǒng)的指定內(nèi)容的存儲(chǔ);用戶可以利用自己賬戶的權(quán)限進(jìn)行對(duì)自己賬戶的修改;數(shù)據(jù)庫管理員需要有create和delete文獻(xiàn)的操作系統(tǒng)權(quán)限;
(2)用戶控制。對(duì)于普通用戶的使用,設(shè)置其密碼的方式與數(shù)據(jù)庫連接,方法如下:客戶端中oracle.ini文件,將初始化參數(shù)從ora_encrypt_login改為true;在服務(wù)器的initORACLE_SID.ora文件中將初始化參數(shù)dbling_encypt_login改為true;
(3)數(shù)據(jù)庫管理者的安全性控制。數(shù)據(jù)庫建立好之后,需要更改管理權(quán)限的sys和system的默認(rèn)密碼,防止用戶非法訪問;需要保證數(shù)據(jù)庫管理者的唯一性,只有管理者有權(quán)利進(jìn)入數(shù)據(jù)庫,防止以sysdba連接,進(jìn)行沒有任何限制的操作;對(duì)于失效用戶,Oracle數(shù)據(jù)庫系統(tǒng)在安裝時(shí)會(huì)自動(dòng)生成一些默認(rèn)用戶,數(shù)據(jù)庫安裝完成后,將無用的用戶進(jìn)行失效處理[4];
(4)數(shù)據(jù)的控制。數(shù)據(jù)庫管理系統(tǒng)的最重要作用是對(duì)數(shù)據(jù)進(jìn)行保護(hù),保證在服務(wù)器或系統(tǒng)出現(xiàn)錯(cuò)誤時(shí)仍然使數(shù)據(jù)不丟失。
數(shù)據(jù)庫對(duì)數(shù)據(jù)的日常保護(hù)需要對(duì)數(shù)據(jù)進(jìn)行備份,當(dāng)服務(wù)器或系統(tǒng)出現(xiàn)問題時(shí),可以及時(shí)使用備份資料進(jìn)行數(shù)據(jù)回復(fù)。
Oracle數(shù)據(jù)庫中提供的日志,用以記錄數(shù)據(jù)庫中的各種操作,是數(shù)據(jù)庫內(nèi)部建立起的一個(gè)所有作業(yè)的完整記錄[5]。
4 結(jié)束語
綜上所述,Oracle數(shù)據(jù)庫的安全技術(shù)還有待提高,對(duì)于數(shù)據(jù)系統(tǒng)的防護(hù)還需要做好網(wǎng)絡(luò)系統(tǒng)的安全保障。但數(shù)據(jù)庫系統(tǒng)的安全管理需要長(zhǎng)期維護(hù),并不斷更新技術(shù),加強(qiáng)數(shù)據(jù)庫管理人員的技術(shù)手段,及時(shí)阻止非法用戶對(duì)數(shù)據(jù)庫內(nèi)的數(shù)據(jù)造成破壞。另一方面,數(shù)據(jù)庫的管理人員需要加強(qiáng)防范意識(shí),保證數(shù)據(jù)庫系統(tǒng)的安全性。本文概括說明Oracle數(shù)據(jù)庫安全的重要性,同時(shí)提出了防護(hù)措施,利用高科技手段對(duì)Oracle數(shù)據(jù)庫進(jìn)行安全保護(hù)。
參考文獻(xiàn):
[1]趙力涵.Oracle數(shù)據(jù)庫解密技術(shù)及權(quán)限提升漏洞的挖掘研究[D].上海:上海交通大學(xué),2012.
[2]招童飛.Oracle數(shù)據(jù)庫信息源日志讀取與查詢服務(wù)系統(tǒng)的研究與實(shí)現(xiàn)[D].廣東:暨南大學(xué),2008.
[3]王雷,曾蘊(yùn)波,王璐.Oracle數(shù)據(jù)庫的性能調(diào)整與優(yōu)化方法探析[J].航天器工程,2008(06):129-133.
[4]余小高.用OO4O和VC++開發(fā)ORACLE數(shù)據(jù)庫應(yīng)用程序的方法研究[J].交通與計(jì)算機(jī),2003(01):78-80.
[5]張輝,趙郁亮,徐江.基于Oracle數(shù)據(jù)庫海量數(shù)據(jù)的查詢優(yōu)化研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2012(02):165-167.
作者簡(jiǎn)介:江川寧(1979-),男,江西南康人,工程師,學(xué)士學(xué)位,研究方向:計(jì)算機(jī);江李兵(1978-),男,湖南桂陽人,工程師,學(xué)士學(xué)位,研究方向:計(jì)算機(jī)。
作者單位:成都雙流國際機(jī)場(chǎng),成都 610202