隨著Web數(shù)據(jù)庫的應(yīng)用越來越廣泛,Web數(shù)據(jù)庫的安全題目日益凸起,如何才能保證和加強(qiáng)數(shù)據(jù)庫的安全性已成為目前必需要解決的題目。
數(shù)據(jù)庫系統(tǒng)安全控制模式
Web數(shù)據(jù)庫是數(shù)據(jù)庫技術(shù)與Web技術(shù)的結(jié)合,其中存在諸多安全隱患,如通過網(wǎng)絡(luò)傳輸?shù)挠脩裘兔艽a很輕易被人竊取。用戶讀取的數(shù)據(jù)可能被截取、篡改等。如何保障Web數(shù)據(jù)庫的安全運(yùn)行呢?
建立安全模型
通常,安全措施是計算機(jī)系統(tǒng)頂用戶使用數(shù)據(jù)庫應(yīng)用程序一直到訪問后臺數(shù)據(jù)庫要經(jīng)由的安全認(rèn)證過程。
當(dāng)用戶訪問數(shù)據(jù)庫時首先通過數(shù)據(jù)庫應(yīng)用程序進(jìn)入到數(shù)據(jù)庫系統(tǒng),這時數(shù)據(jù)庫應(yīng)用程序?qū)⒂脩籼峤坏挠脩裘c口令(口令密文)交給數(shù)據(jù)庫治理系統(tǒng)進(jìn)行認(rèn)證,在確定其身份正當(dāng)后,才能進(jìn)入下一步的操縱。當(dāng)要對數(shù)據(jù)庫中的對象(表、視圖、觸發(fā)器、存儲過程等)進(jìn)行操縱時,也必需通過數(shù)據(jù)庫訪問的身份認(rèn)證,只有通過了數(shù)據(jù)庫的身份認(rèn)證才能對數(shù)據(jù)庫對象進(jìn)行實(shí)際的操縱。
通過身份認(rèn)證的用戶,只是擁有了進(jìn)入應(yīng)用系統(tǒng)和數(shù)據(jù)庫的“憑證”,但用戶在應(yīng)用系統(tǒng)和數(shù)據(jù)庫中可以進(jìn)行什么樣的操縱,就要依賴“訪問控制”和“存取控制”的權(quán)限分配和約束。其中“訪問控制”與應(yīng)用系統(tǒng)相關(guān),決定當(dāng)前用戶可以對應(yīng)用系統(tǒng)中哪些模塊、模塊中的哪些工作流程進(jìn)行治理;“存取控制”與數(shù)據(jù)庫相聯(lián)系關(guān)系,決定當(dāng)前用戶可以對數(shù)據(jù)庫中的哪些對象進(jìn)行操縱,以及可以進(jìn)行何種操縱。固然“訪問控制”和“存取控制”可以將用戶的應(yīng)用系統(tǒng)訪問范圍最小化,數(shù)據(jù)對象操縱權(quán)限最低化,但是就數(shù)據(jù)庫本身而言,利用這種視圖、觸發(fā)器、存儲過程等方法來保護(hù)數(shù)據(jù)和對一些敏感數(shù)據(jù)的“加密存儲”也是數(shù)據(jù)庫治理系統(tǒng)提供的安全策略。
審計追蹤和數(shù)據(jù)備份
目前還沒有任何一種可行的方法來徹底解決正當(dāng)用戶在通過身份認(rèn)證后濫用特權(quán)的題目,但審計追蹤還是保證數(shù)據(jù)庫安全不可缺的一道重要防線。
審計是一種監(jiān)督措施,跟蹤記實(shí)有關(guān)數(shù)據(jù)的訪問流動。審計追蹤把用戶對數(shù)據(jù)庫的所有操縱自動記實(shí)下來,存放在審計日志中(Audit Log)。記實(shí)的內(nèi)容一般包括:操縱類型(如修改、查詢、刪除),操縱終端標(biāo)識與操縱者標(biāo)識,操縱日期和時間,操縱所涉及到相關(guān)數(shù)據(jù)(如基本表、視圖、記實(shí)、屬性等),數(shù)據(jù)庫的前象和后象等。利用這些信息,可以進(jìn)一步找出非法存取數(shù)據(jù)的庫人、時間和內(nèi)容等。
數(shù)據(jù)庫治理系統(tǒng)往往都將其作為可選特征,答應(yīng)相應(yīng)的操縱語句可靈活的打開或封閉審計功能。
數(shù)據(jù)庫備份恢復(fù)策略
計算機(jī)同其他設(shè)備一樣,都可能發(fā)生故障。計算機(jī)故障的原因多種多樣,包括磁盤故障、電源故障、軟件故障、劫難故障以及人為破壞等。一旦發(fā)生這種情況,就可能造成數(shù)據(jù)庫的丟失。因此數(shù)據(jù)庫系統(tǒng)必需采取必要的措施,以保證發(fā)生故障時,可以恢復(fù)數(shù)據(jù)庫。數(shù)據(jù)庫系統(tǒng)治理系統(tǒng)的備份和恢復(fù)機(jī)制就是保證在數(shù)據(jù)庫系統(tǒng)出故障時,能夠?qū)?shù)據(jù)庫系統(tǒng)還原到正常狀態(tài)。
數(shù)據(jù)備份(建立冗余數(shù)據(jù))是指按期或不按期地對數(shù)據(jù)庫進(jìn)行復(fù)制??梢詫?shù)據(jù)復(fù)制到本地機(jī)制上,也可以復(fù)制到其他機(jī)器上?;謴?fù)方法通常是可以利用利用備份技術(shù)、事務(wù)日志技術(shù)、鏡像技術(shù)完成。
視圖機(jī)制和數(shù)據(jù)加密
為不同的用戶定義不同的視圖,可以限制各個用戶的訪問范圍。通過視圖機(jī)制把要保護(hù)的數(shù)據(jù)對無權(quán)存取這些數(shù)據(jù)的用戶躲藏起來,從而自動地對數(shù)據(jù)庫提供一定程度的安全保護(hù)。但是視圖機(jī)制的安全性保護(hù)不太精細(xì),往往不能達(dá)到應(yīng)用系統(tǒng)的要求,其主要功能在于提供了數(shù)據(jù)庫的邏輯獨(dú)立性。在實(shí)際應(yīng)用中,通常將視圖機(jī)制與授權(quán)機(jī)制結(jié)合起來使用,首先用視圖機(jī)制屏蔽一部門保密數(shù)據(jù),然后在視圖機(jī)制長進(jìn)一步定義存取權(quán)限。
數(shù)據(jù)加密(Data Encryption)是防止數(shù)據(jù)庫中數(shù)據(jù)存儲和傳輸中失密的有效手段。加密的基本思惟是根據(jù)一定的算法將原始數(shù)據(jù)(明文plaintext)加密成為不可直接識別的格局(密文,ciphertext),數(shù)據(jù)以密文的方式存儲和傳播。
Web數(shù)據(jù)庫的安全威脅涉及很多方面,是一個全局性的題目,而且黑客的攻擊手段和方法不斷翻新,因此要根據(jù)企業(yè)的實(shí)際需求綜合考慮各種技術(shù),構(gòu)建一個有機(jī)的結(jié)合體。
同時也要清醒地熟悉到一個很好的安全解決方案不僅是純粹的技術(shù)題目,而且還需要法律、治理、社會因素的配合。