摘要:在計算機技術迅猛發(fā)展的前提下,很多企業(yè)都建立了自己的數(shù)據(jù)庫,安全性是數(shù)據(jù)庫必須要考慮的問題。本文對Oracle數(shù)據(jù)庫中權限管理、用戶控制、審計和數(shù)據(jù)加密等數(shù)據(jù)庫的安全技術進行分析,從而保障數(shù)據(jù)庫的安全性和穩(wěn)定性,以保障系統(tǒng)高效地運轉(zhuǎn)。
關鍵詞:ORACLE數(shù)據(jù)庫;權限管理;用戶控制;審計;數(shù)據(jù)加密
中圖分類號:G250.74 文獻標識碼:A 文章編號:1007-9599 (2012) 10-0000-01
數(shù)據(jù)庫在企事業(yè)單位得到了越來越廣泛地應用,數(shù)據(jù)庫中存在著許多關鍵數(shù)據(jù),這些數(shù)據(jù)對于企事業(yè)單位有著至關重要的作用;因此,數(shù)據(jù)庫安全方面的問題就顯得極為重要,必須加強對數(shù)據(jù)庫安全技術的研究。Oracle數(shù)據(jù)庫是應用最為廣泛的數(shù)據(jù)庫系統(tǒng),因此如何保證Oracle數(shù)據(jù)庫的安全有著極為重要的意義。
Oracle數(shù)據(jù)庫在通常條件下可以保證數(shù)據(jù)庫的安全性和穩(wěn)定性,如果數(shù)據(jù)庫的操作系統(tǒng)受到其他計算機或者網(wǎng)絡的故障影響,那么數(shù)據(jù)的安全性就會受到威脅,甚至出現(xiàn)Oracle數(shù)據(jù)庫癱瘓的現(xiàn)象。為了保證數(shù)據(jù)庫的安全性,必須對數(shù)據(jù)庫采用安全技術來保證系統(tǒng)的正常運行,確保數(shù)據(jù)的絕對安全和可靠。
一、權限管理
數(shù)據(jù)庫的安全問題離不開用戶,用戶在對數(shù)據(jù)庫中的數(shù)據(jù)進行訪問甚至修改本身就對數(shù)據(jù)庫產(chǎn)生了較大的影響,因此,用戶是數(shù)據(jù)庫安全性的保障。通過對用戶的訪問權限進行控制,在一定程度上可以增強數(shù)據(jù)庫的安全性和數(shù)據(jù)的保密性。對用戶的權限控制可以采用授予和收回等方法有效地進行權限管理。
(一)對不同的用戶進行權限分級設置,即按照工作的需要把用戶進行分級管理,讓每一個等級的用戶滿足其自身工作的需要即可,防止不同等級的用戶對數(shù)據(jù)進行誤操作,根據(jù)等級的不同對用戶訪問的數(shù)據(jù)范圍進行設置;
(二)用戶可以對自己的數(shù)據(jù)進行設置,只允許某一個或某部分用戶可以對數(shù)據(jù)進行訪問但是不可以進行修改;
(三)對于一些具有特殊權限的用戶,他們可以對數(shù)據(jù)進行修改,但是不可以把修改數(shù)據(jù)的權利轉(zhuǎn)讓給沒有修改權限的用戶;
(二)數(shù)據(jù)庫管理員可以對數(shù)據(jù)庫里面所有的數(shù)據(jù)和文件具有進行創(chuàng)建、修改和刪除的權利,可以對數(shù)據(jù)庫中的相關文件進行編輯和完善,并且定期對數(shù)據(jù)庫進行檢查,將一些有害的信息刪除掉,以確保數(shù)據(jù)庫的絕對安全。
二、用戶控制
為了規(guī)范數(shù)據(jù)庫中的資料管理,以保證數(shù)據(jù)庫的安全性和數(shù)據(jù)的保密性,對數(shù)據(jù)庫中的不同用戶采用不同的用戶控制方式。
(一)對于普通用戶,即:權限對象,我們可以通過數(shù)據(jù)加密的方式來進行數(shù)據(jù)訪問。如:在客戶端的文件中設置訪問密碼,在服務器端文件中進行訪問設置等;
(二)對于終端用戶,其安全性就更為重要了,很多企事業(yè)單位的數(shù)據(jù)庫都是采用為用戶創(chuàng)建角色的方式把所需要的文件和權限分配給所有的用戶角色。對于終端用戶來說,其權限的管理可以用角色來達到實施的目的;
(三)對數(shù)據(jù)庫管理者的安全性進行設定也是非常重要的,如對管理者的用戶密碼進行定期修改,可以有效地防止非法用戶盜取管理者的密碼,避免非法用戶對數(shù)據(jù)庫進行訪問;可以通過密碼和相關認證使管理者使管理者進入數(shù)據(jù)庫,以保證安全性,通過對某些默認的用戶或者失效的用戶進行篩選,保證數(shù)據(jù)庫的安全性和穩(wěn)定性。
三、審計
任何數(shù)據(jù)庫都有可能存在安全隱患,Oracle數(shù)據(jù)庫采用審計功能來對各個用戶進行監(jiān)視和記錄他們的活動情況,數(shù)據(jù)庫的審計記錄存放在SYS 方案中。初始狀態(tài)的Oracle數(shù)據(jù)庫審計功能是不開啟的,這是因為開啟審計功能會對數(shù)據(jù)庫的性能造成一些影響。Oracle數(shù)據(jù)庫支持三種類型的審計,即語句審計、權限審計和方案對象審計。語句審計是針對 DDL、DML 語句的審計,如/ AUDIT TABLE0語句審計就是針對所有的CREATE 和DROP TABLE 語句進行審計;權限審計是對系統(tǒng)權限的審計,并且是有權限限制的,如只針對/ CREATETABLE0的權限審計,則只對CREATE TABLE語句進行審計;方案對象審計是針對特定的 DML 語句和特定方案對象的GRANT、REVOKE 語句的審計。
四、數(shù)據(jù)加密
Oracle數(shù)據(jù)庫的最后一道防線是對數(shù)據(jù)進行加密,Oracle數(shù)據(jù)庫在操作系統(tǒng)中以文件的形式進行存儲;如果數(shù)據(jù)庫遭受外來入侵,入侵者就可以直接對數(shù)據(jù)庫中的文件進行數(shù)據(jù)修改,甚至偽造數(shù)據(jù)庫中的文件內(nèi)容。Oracle數(shù)據(jù)庫這些安全隱患一般用戶很難發(fā)現(xiàn),可以采用對數(shù)據(jù)庫的管理系統(tǒng)進行分層次加密來解決,它可以在數(shù)據(jù)庫遭受安全攻擊時有效地保障數(shù)據(jù)的安全,通常在下面三個層對數(shù)據(jù)進行數(shù)據(jù)加密:
(一)操作系統(tǒng)OS層加密。OS層不能準確辨認數(shù)據(jù)庫文件中的數(shù)據(jù)關系,從而無法產(chǎn)生合理的密鑰,對密鑰進行合理的管理和使用是非常困難的。所以,對企事業(yè)單位的大型數(shù)據(jù)庫在OS層對數(shù)據(jù)庫文件進行加密實現(xiàn)起來難度較大。
(二)數(shù)據(jù)庫管理系統(tǒng)DBMS內(nèi)核層加密。這種加密方法是在物理存取數(shù)據(jù)之前完成加/解密工作,加密的功能十分強大,且加密后不會受到影響DBMS的功能,實現(xiàn)了加密功能與數(shù)據(jù)庫管理系統(tǒng)之間的無縫銜接;但是加密運算在服務器端進行,加重了服務器的負載,而且DBMS和加密器之間的接口需要DBMS 開發(fā)商的支持。
(三)數(shù)據(jù)庫管理系統(tǒng)DBMS外層實現(xiàn)加密。這種加密方式是將數(shù)據(jù)庫加密系統(tǒng)做成DBMS的一個外層工具,根據(jù)加密的具體要求自動對數(shù)據(jù)進行的加/解密處理,這種方式加/解密運算在客戶端進行,不會加重數(shù)據(jù)庫服務器的負載并且可以實現(xiàn)網(wǎng)上傳輸?shù)募用?,但是加密功能受到了一定限制,與數(shù)據(jù)庫管理系統(tǒng)之間的銜接不是很好。
Oracle9i在 Oracle10g中增加了DBMS_CRYPTO包用于數(shù)據(jù)加密/解密,支持DES、AES等多種加密/解密算法。
五、結(jié)論
通過對Oracle數(shù)據(jù)庫安全技術進行分析,并且在 Oracle9及以上版本的數(shù)據(jù)庫上進行了實際的應用,從而保證Oracle數(shù)據(jù)庫安全穩(wěn)定地運行。
參考文獻:
[1]蔣衛(wèi).基于Oracle的ICCAM系統(tǒng)設計與開發(fā)[D].無錫:江南大學,2009
[2]孫銀昌,夏躍偉,劉蘭蘭.ORACLE數(shù)據(jù)庫安全策略和方法[J]煤炭技術,2012,(3)
[3]于淑云,馬繼軍.Oracle數(shù)據(jù)庫安全問題探析與應對策略[J].軟件導刊,2010,(10)
[4]李紅,劉志杰,謝曉堯.Oracle分布式數(shù)據(jù)庫系統(tǒng)及網(wǎng)絡安全策略研究[J].貴州師范大學學報(自然科學版),2011,(8)
[作者簡介]
魏道洪(1974,10-):男,福建省福清市人,大學文化,助理工程師。