LBS資料庫安全特性,數據獨立性,數據安全性,數據的完整性,並發控制,故障恢復,LBS資料庫安全策略,身份認證,訪問控制,數據加密,審計追蹤和攻擊檢測,分散式事務管理,
LBS資料庫安全特性
資料庫安全性是指資料庫的任何部分都不允許受到惡意侵害,或未經授權的存取與修改。資料庫是LBS套用系統的核心部分,有價值的數據資源都存放在其中,這些共享的數據資源既要面對必需的可用性需求,又要面對被篡改、損壞和被竊取的威脅。
通常,對資料庫的破壞來自4個方面:一是系統故障;二是並發操作所引起的數據不一致;三是轉入或更新資料庫的數據有錯誤,更新事務時未遵守保持資料庫一致的原則;四是人為的破壞,如數據被非法訪問,甚至被篡改或破壞。
LBS的資料庫安全特性主要包括以下幾個方面:
數據獨立性
數據獨立於應用程式之外,理論上資料庫系統的數據獨立性分為物理獨立性和邏輯獨立性兩種。
(1)物理獨立性
物理獨立性,即資料庫物理結構的變化不影響資料庫的套用結構,從而也就不能影響其相應的應用程式,這裡的物理結構是指資料庫的物理位置和物理設備等。
(2)邏輯獨立性
邏輯獨立性,即資料庫邏輯結構的變化不會影響用戶的應用程式,數據類型的修改、增加,改變各表之間的聯繫都不會導致應用程式的修改。
數據安全性
比較完整的資料庫對數據安全性採取的措施主要有3類:一是將資料庫中需要保護的部分與其他部分相隔離;二是使用授權規則;三是將數據加密後以密碼的形式存於資料庫內。
數據的完整性
數據的安全性通常表明數據在可靠性與準確性上是可信賴的,但同時也意味著數據可能是無效的或不完整的,因此人們引入了數據完整性概念。數據完整性包括數據的正確性、有效性和一致性。
並發控制
如果資料庫套用要實現多用戶共享數據,就可能在同一時刻多個用戶要存取數據,這種事件叫做並發事件。當一個用戶取出數據進行修改,在修改存入資料庫之前如有其他用戶再提取此數據,那么讀出的數據就是不正確的。這時就需要對這種並發操作施行控制,排除和避免這種錯誤的發生,保證數據的正確性。
故障恢復
當資料庫系統運行時出現物理或邏輯上的錯誤,系統能儘快恢復正常,這就是資料庫系統的故障恢復功能。
在LBS中,敏感數據都是存儲於各類資料庫之中,對於敏感數據的保護主要是基於對資料庫數據的保護。其主要技術有容災備份、歸檔、分級存儲管理、容錯和網路冗餘技術以及災難恢復技術等。
LBS資料庫安全策略
LBS套用系統的資料庫安全策略是涉及對LBS信息訪問的最高指導,這些策略根據用戶需求、安裝環境、建立規則和法律等方面的限制來制定,用於描述訪問規則和訪問特徵的關係。主要包括安全管理策略、最小特權策略、訪問控制分類策略和訪問控制策略等。
安全管理策略可分為集中式控制和分散式控制。在集中式控制策略中,一個授權管理員或組,控制著系統的所有安全;在分散式控制策略中,不同的授權管理員或組,控制著資料庫安全的不同部分。最小特權策略是指系統主體執行授權任務時,應該授予他完成任務所需要的最小特權。訪問控制分類策略是指限制主體訪問客體使做到“知必所需”,需要對主體訪、客體和訪問許可權進行分類,分類策略包括分類的粒度、分類的方法和授權的方法等。訪問控制策略與訪問控制分類策略密切相關,訪問控制策略定義主體對客體訪問規則的集合。因此,為了靈活控制資料庫數據的安全性,資料庫管理系統應該提供動態的安全機制,如動態授權方式。
從現有的安全技術手段來看,基於這些策略實現資料庫安全的基本方法有:身份認證、存儲訪問控制、敏感數據加密、審計跟蹤與攻擊檢測等。
身份認證
在開放共享的LBS套用環境下,資料庫系統必須要求用戶進行身份認證。身份認證是安全系統防止非法用戶侵入的第一道安全防線,它的目的是識別系統授權的合法用戶、防止非法用戶訪問資料庫系統。用戶要登錄系統時,必須向系統提供用戶標識(User Identification)和鑑別信息(Authentication),以供安全系統識別認證。
在當前流行的這幾種RDBMS中,身份認證一般有3級;系統登錄、資料庫連線和資料庫對象使用。
系統登錄一般由作業系統提供檢查,要求用戶輸人用戶名和口令加以驗證。通過系統安全檢查後可以處理業務流程,當要求訪問資料庫時,就要資料庫管理系統驗證當前用戶身份是否可以進行資料庫訪問。在取得資料庫登入身份後,對資料庫中對象進行操作之前,資料庫管理系統要再次檢驗用戶對資料庫對象的訪問許可權,核實該用戶是否有權對該資料庫對象進行指定的操作。
訪問控制
訪問控制是指系統內部的訪問控制,或者是系統內部主體對客體訪問所受到的控制。實施訪問控制,是維護系統安全、保護系統資源的重要技術手段,也是LBS套用系統中資料庫安全機制的核心。保護的主要目標是被訪問的客體,其主要任務是對存取訪問許可權的確定、授予和實施。其目的就是在保證系統安全的前提下,最大限度地給予資源共享。
訪問控制的基礎是主體和客體的安全屬性。實施訪問控制,側重保護的是客體。每個需要加以保護的客體,都得按安全要求,預先標識一組相應的安全屬性,並以此鑑別、確定對客體訪問的允許與否,這個標識安全屬性稱為訪問控制表;同樣,每個主體也應當設有相應的訪問控制表,用以標明它訪問客體的能力。此處標識的作用就是“授權”,用以標明哪些主體有權訪問。所確定的訪問許可權實際是允許的訪問方式即:讀、寫、查詢、增加、刪除和修改等操作的組合,還有安全的訪問過程等。
訪問控制機制的建立,應當遵循如下的安全原則:
· LBS套用系統資料庫系統中用戶或者為其代表的用戶進程實施存取控制時,只能擁有最小的必需特權。
· 實施必要的嚴格的驗證,驗證的主要內容是主體的身份、許可權、訪問方式是否合法以及客體的操作允許性。
· 確保訪問控制的可靠性,防止主體能夠經由被允許的其他訪問路徑,迂迴的實現某些越權的非法訪問。此外,還應該經得起可能出現的惡意攻擊。
· 實體擁有的許可權不能永遠不變,應當及時修改或為許可權設定最短的時限。
· 在應有的許可權範圍內,不使用戶感到運用的諸多限制和不便。
數據加密
一般而言,上述提供的安全技術以能夠基本滿足一般LBS套用系統的資料庫套用,但對於一些重要的LBS套用系統,僅靠上述措施還是難以完全保證數據的安全性。因為所有數據以可讀的原始形式存儲在資料庫中,高明的入侵者仍可能從資料庫系統的記憶體中導出所需要的信息,或者採用其他方式越權打入資料庫,從系統的後備存儲器上竊取數據或篡改數據。這樣也沒法保護數據的真實性和可靠性。因此,對於敏感數據的加密保護,也成為資料庫安全策略的重要任務之一。
審計追蹤和攻擊檢測
雖然存取控制在經典和現代安全理論中都是實施安全策略的最重要手段,但軟體工程技術還沒有達到證明一個系統的安全體系的程度。因此,不可能保證任何一個系統完全不存在安全漏洞,也沒有一種可行的方法,可以徹底地解決合法用戶在通過身份認證後濫用特權的問題。因此,審計追蹤和攻擊檢測便成了一個十分重要的安全措施,也是任何一個安全系統中不可缺少的最後一道防線。
審計功能在系統運行時,可以自動將對資料庫的所有操作記錄在審計日誌中,它用來監視各用戶對資料庫施加的動作。攻擊檢測系統則是根據審計數據分析檢測內部和外部攻擊者的攻擊企圖,再現導致系統現狀的事件,分析發現系統安全的弱點,追查相關責任者。採用兩種方式的審計,即用戶審計和系統審計。用戶審計時,資料庫的審計系統記下所有對自己表或者視圖進行訪問的企圖(包括成功的和不成功的)及每次操作的用戶名、時間、操作類型和操作代碼等信息。審計的結果存儲在資料庫的審計表中,利用這些信息用戶可以進行審計分析。系統審計由系統管理員進行,其審計內容主要是系統一級命令以及資料庫對象的使用情況等信息。
分散式事務管理
在大多數LBS系統中,各用戶採用分散式結構有機關聯。因此,其資料庫安全策略應該重點採用分散式的事務管理技術。分布事務管理的目的在於保證事務的正確執行及執行結果的有效性,主要解決系統可靠性、事務並發控制及系統資源的有效利用等問題。分散式事務管理首先要分解為多個子事務到各個站點上去執行,各個伺服器之間還必須採取合理的算法進行分散式並發控制和提交,以保證事務的完整性,確保整個LBS資料庫系統的安全穩定。