第6章數(shù)據(jù)庫安全_第1頁
第6章數(shù)據(jù)庫安全_第2頁
第6章數(shù)據(jù)庫安全_第3頁
第6章數(shù)據(jù)庫安全_第4頁
第6章數(shù)據(jù)庫安全_第5頁
已閱讀5頁,還剩79頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

2023/2/5計算機系統(tǒng)安全原理與技術(第2版)1第6章數(shù)據(jù)庫安全主講人:王弈E-mail:wangyi@2023/2/5計算機系統(tǒng)安全原理與技術(第2版)2本章主要內(nèi)容數(shù)據(jù)庫安全問題數(shù)據(jù)庫安全控制數(shù)據(jù)庫安全研究的發(fā)展2023/2/5計算機系統(tǒng)安全原理與技術(第2版)3數(shù)據(jù)庫安全問題數(shù)據(jù)庫安全的重要性

數(shù)據(jù)庫安全問題

2023/2/5計算機系統(tǒng)安全原理與技術(第2版)4數(shù)據(jù)庫概念

1.關系、層次和網(wǎng)狀型數(shù)據(jù)庫模型(1)關系結(jié)構模型:把一些復雜的數(shù)據(jù)結(jié)構歸結(jié)為簡單的二元關系(即二維表格形式),按照關系運算理論(主要是三范式原則)組織與管理數(shù)據(jù)。(2)層次結(jié)構模型:實質(zhì)上是一種有根節(jié)點的定向有序樹(在離散數(shù)學中“樹”被定義為一個無回路的連通圖)。(3)網(wǎng)狀結(jié)構模型:按照網(wǎng)狀數(shù)據(jù)結(jié)構建立的數(shù)據(jù)庫系統(tǒng)稱為網(wǎng)狀數(shù)據(jù)庫系統(tǒng)。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)52.數(shù)據(jù)庫數(shù)據(jù)庫由一些庫表組成,每張庫表由一些相關字段(也稱為域)組成,這些字段對應著某個客觀實體的屬性集合。庫表是一張二維表,每張庫表內(nèi)可以存放多條記錄,表的每一行是一條記錄,表的每一列是一個字段,庫表的每一行每一列的交叉點是一個數(shù)據(jù)元素,它是一個字段在一條記錄中的取值。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)6

3.數(shù)據(jù)庫管理系統(tǒng)DBMSDBMS是專門負責數(shù)據(jù)庫管理和維護的計算機軟件系統(tǒng)。DBMS的主要職能包括:正確的編譯功能,能正確執(zhí)行規(guī)定的操作;正確執(zhí)行數(shù)據(jù)庫命令;保證數(shù)據(jù)的安全性、完整性,能抵御一定程度的物理破壞,能維護和提交數(shù)據(jù)庫內(nèi)容;能識別用戶、分配授權和進行訪問控制,包括身份認證。執(zhí)行數(shù)據(jù)庫訪問,保證網(wǎng)絡通信功能。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)72023/2/5計算機系統(tǒng)安全原理與技術(第2版)81.數(shù)據(jù)庫安全的重要性

由于數(shù)據(jù)庫的重要地位體現(xiàn)在以下幾方面:1.保護敏感信息和數(shù)據(jù)資產(chǎn)2.計算機網(wǎng)絡系統(tǒng)安全的關鍵環(huán)節(jié)2023/2/5計算機系統(tǒng)安全原理與技術(第2版)92.數(shù)據(jù)庫面臨的安全威脅

數(shù)據(jù)庫的安全主要受到以下因素的威脅:1.硬件故障與災害破壞2.數(shù)據(jù)庫系統(tǒng)/應用軟件的漏洞和黑客攻擊3.人為錯誤4.管理漏洞5.不掌握數(shù)據(jù)庫核心技術6.隱私數(shù)據(jù)的泄漏問題2023/2/5計算機系統(tǒng)安全原理與技術(第2版)10泄漏類型除了數(shù)據(jù)本身,和數(shù)據(jù)相關的其他信息同樣具有敏感性。準確數(shù)據(jù):泄漏了敏感數(shù)據(jù)的準確值,最嚴重的暴露——安全性被徹底破壞。范圍:知道敏感數(shù)據(jù)的范圍,而不知道其準確值。部分泄漏了敏感數(shù)據(jù)。否定結(jié)果:知道某個數(shù)據(jù)的值不是××。存在性:與數(shù)據(jù)的具體值無關,而是知道數(shù)據(jù)本身是否存在。大概值:能確定某個域是某個數(shù)值的概率。安全與精確度安全性角度——透露的數(shù)據(jù)越少越好。用戶查詢角度——保護所有敏感的數(shù)據(jù),而盡可能揭示不敏感的數(shù)據(jù)。安全與精確度的理想結(jié)合:維護完善的機密性與最大的精確性?!獙崿F(xiàn)非常困難。圖示:安全與精確度隱藏的不能泄露的數(shù)據(jù)不能通過查詢推理出的數(shù)據(jù)可以通過推理查詢出的數(shù)據(jù)一查訊就可以透露的數(shù)據(jù)最敏感數(shù)據(jù)最低敏感數(shù)據(jù)盡可能安全隱藏揭示數(shù)據(jù)盡可能精確推理推理問題(inferenceproblem):是一種通過非敏感數(shù)據(jù)推斷或推導敏感數(shù)據(jù)的方法。它是數(shù)據(jù)庫的一個弱點。直接從數(shù)據(jù)庫確定敏感數(shù)據(jù)的方法直接攻擊間接攻擊聚集直接攻擊直接攻擊是指用戶試圖通過直接查詢敏感域,根據(jù)產(chǎn)生的少量記錄決定敏感數(shù)據(jù)域的值。最成功的技術:形成一個與數(shù)據(jù)項精確匹配的查詢。NameSexRaceAidFinesDrugsDormadamMC5000451holmbailMB000greychinFA3000200westdewitMB1000353greyearartFC2000951holmfeinFC1000150westgroffMC400003westhillFB5000102holmkochFC001westliuFA0102greymajorMC200002grey直接攻擊直接攻擊指用戶通過直接查詢敏感域,根據(jù)產(chǎn)生的少量記錄確定敏感域的值。成功技術:形成一個與數(shù)據(jù)項精確匹配的查詢。例子:

ListNamewhereSex=M?Drugs=1揭示了記錄adam,Drugs=1。這是一個明顯的直接攻擊的例子。直接攻擊例子:比較隱蔽的查詢

ListNamewhere(Sex=M?Drugs=1)? (Sex≠M?

Sex≠F)?(Dorm=ayres)上述查詢的結(jié)果:揭示了記錄adam,Drugs=1。將主要查詢目的隱藏在一個復雜的查詢邏輯中,而實際的查詢目的不變。查詢匹配的記錄為0無該宿舍直接攻擊一種防御直接攻擊的策略:“n個數(shù)據(jù)項超過k%”規(guī)則——數(shù)量很少的數(shù)據(jù)占一個分類比例很大時,查詢結(jié)果不能公布。間接攻擊背景:只發(fā)布統(tǒng)計信息,而不泄漏個人數(shù)據(jù)和信息。典型攻擊種類和攻擊計數(shù)攻擊平均值攻擊追蹤攻擊線性系統(tǒng)的脆弱性和(sum)攻擊從一個已知的和推理單個值。holmgreywestTotalM50003000400012000F70000400011000Total120003000800023000按寢室和性別查詢的資助和推出住在grey的任何女生都沒有收到資助Liu(住在grey)沒有受到資助計數(shù)攻擊通過和總數(shù)(和:sum)結(jié)合,可以獲得更多的個人信息。holmgreywestTotalM1315F2136Total34411按寢室和性別查詢的學生計數(shù)男生人數(shù)=1男生的總資助數(shù)為5000+住在holm的男生(只有1個人)adam得到資助5000人名(Name)可以通過普通查詢得到,敏感度低平均值攻擊根據(jù)數(shù)據(jù)的平均值計算出某個精確值。攻擊成功的前提條件:要計算的數(shù)據(jù)在平均值的交集中。屬性1的最大值屬性1的最小值屬性2的最大值屬性2的最小值屬性1和屬性2的平均值例子NameSexDrugsAidbaileyM00dewittM31000majorsM22000groffM34000adamsM15000liuF20majorsM22000hillF25000q=median(AIDwhereSEX=M)p=median(AIDwhereDRUGS=2)R=median(AIDwhere(DRUGS=2)?(SEX=M))追蹤攻擊(trackerattack)通過使用額外的、產(chǎn)生更少結(jié)果的查詢欺騙DBMS,從而找到想要的數(shù)據(jù)。進行兩次查詢,一次查詢結(jié)果比另一次增加了一些記錄,去掉重復記錄,留下不同的記錄(想要統(tǒng)計的記錄)?!皀個數(shù)據(jù)項超過k%”規(guī)則可以不公開查詢結(jié)果,但是無法判斷兩次查詢的“間隙”部分。例子q=count((SEX=F)?(RACE=C)?DORM=holm)q=1拒絕查詢abccount(a)=6count(a?┐(b?c))=5count(a)-count(a?┐(b?c))=6-5=1q=count(a?b?c)?q=count(a)-count(a?┐(b?c))count((SEX=F))-count((RACE≠c)?(DORM)≠holm)線性系統(tǒng)的脆弱性運用邏輯和代數(shù)知識前提:數(shù)據(jù)庫中數(shù)據(jù)分布的特點。結(jié)果:得到一系列的查詢結(jié)果。查詢q1=c1+c2+c3+c4+c5q2=c1+c2+c4q3=c3+c4q4=c4+c5q5=c2+c5每個查詢qi沒有泄露任何一個ci的值解上述線性方程組,得到每個ci的取值??刂平y(tǒng)計推理攻擊兩種防止推理攻擊的方法:查詢控制:針對直接攻擊對單個數(shù)據(jù)項進行控制禁止查詢:不提供敏感數(shù)據(jù)隱藏:提供的結(jié)果接近但不是精確的實際數(shù)據(jù)值。控制統(tǒng)計推理攻擊有限響應禁止組合結(jié)果隨機樣本隨機數(shù)擾亂查詢分析有限響應禁止根據(jù)“n個數(shù)據(jù)項超過k%”規(guī)則,當結(jié)果中出現(xiàn)上述情形時,僅將其在顯示結(jié)果中刪除不能阻止推理攻擊的進行。解決方法:制造一點混淆阻止攻擊。例子:按寢室和性別查詢的學生計數(shù)holmgreywestTotalM1315F2136Total34411holmgreywestTotalM-3-5F2-36Total34411泄露太多信息,不允許被查詢?nèi)匀豢梢酝ㄟ^F=Total-M或者M=Total-F獲得例子:按寢室和性別查詢的學生計數(shù)holmgreywestTotalM1315F2136Total34411holmgreywestTotalM1315F2136Total34411解決方案一該數(shù)據(jù)所在行和列各增加一禁止查詢單元,進行置亂。后果:在數(shù)據(jù)很少的表中,所有的單元都被禁止查詢。解決方案二將總數(shù)Total禁止查詢禁止查詢禁止查詢禁止查詢禁止查詢禁止查詢組合結(jié)果組合行或列的查詢結(jié)果,以保護敏感數(shù)據(jù)。sexDruguse0123M1112F2220sexDruguse0or12or3M23F42透露太多信息將2列組合,產(chǎn)生敏感性低的結(jié)果隨機樣本查詢的結(jié)果不是來自整個數(shù)據(jù)庫,而是從數(shù)據(jù)庫的隨機樣本中獲得。樣本要選擇得足夠大,使得查詢結(jié)果近似整個數(shù)據(jù)庫的結(jié)果。為了防止重復相同查詢,進而求平均的攻擊。相同查詢選取的采用相同樣本。隨機數(shù)擾亂用一個小的錯誤ε對數(shù)據(jù)庫中的精確值x作擾亂。ε可正可負。其結(jié)果和隨機樣本類似,但是更加簡單,因為存儲ε并不復雜。查詢分析分析檢查查詢的含義,然后決定是否提供查詢結(jié)果。實現(xiàn)復雜,維護困難。推理問題的小結(jié)至今沒有完善的解決方法。三種控制推理問題的思路禁止明顯的敏感數(shù)據(jù):實現(xiàn)簡單,但是經(jīng)常容易選錯要禁止的數(shù)據(jù),從而造成數(shù)據(jù)庫可用性下降。追蹤用戶已知的數(shù)據(jù):可能實現(xiàn)最大的安全性,但是實現(xiàn)代價很昂貴。而且沒有考慮到兩個用戶將已知結(jié)果組合,以及一個用戶以多種身份查詢的情形。偽裝數(shù)據(jù):可以限制通過精確值進行邏輯和代數(shù)運算的統(tǒng)計攻擊。但是結(jié)果不精確,甚至會出現(xiàn)不一致的情況。數(shù)據(jù)庫安全控制數(shù)據(jù)庫的安全需求和安全策略數(shù)據(jù)庫安全存取控制數(shù)據(jù)庫完整性控制數(shù)據(jù)庫的備份與恢復推理控制與隱通道分析(提前)數(shù)據(jù)庫可生存性控制數(shù)據(jù)庫隱私保護2023/2/5計算機系統(tǒng)安全原理與技術(第2版)382023/2/5計算機系統(tǒng)安全原理與技術(第2版)39

數(shù)據(jù)庫的安全需求和安全策略1.數(shù)據(jù)庫的安全需求(C.P.Pfleeger《SecurityinComputing》)物理完整性邏輯完整性元素正確性可審計性訪問控制身份認證可用性國標《計算機信息安全等級保護數(shù)據(jù)庫系統(tǒng)技術要求》保密性完整性可用性可控性可存活性隱私性2023/2/5計算機系統(tǒng)安全原理與技術(第2版)402023/2/5計算機系統(tǒng)安全原理與技術(第2版)41

(1)保密性DBMS除了通過訪問控制機制對數(shù)據(jù)庫中的敏感數(shù)據(jù)加強防護外,還可以通過加密技術對庫中的敏感數(shù)據(jù)加密。但加密雖然可以防止對數(shù)據(jù)的惡意訪問,也顯著地降低數(shù)據(jù)庫訪問效率。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)42

(2)數(shù)據(jù)庫的完整性在物理完整性方面,要求從硬件或環(huán)境方面保護數(shù)據(jù)庫的安全,防止數(shù)據(jù)被破壞或不可讀。例如,應該有措施解決掉電時數(shù)據(jù)不丟失不破壞的問題,存儲介質(zhì)損壞時數(shù)據(jù)的可利用性問題,還應該有防止各種災害(如火災、地震等)對數(shù)據(jù)庫造成不可彌補的損失,應該有災后數(shù)據(jù)庫快速恢復能力。數(shù)據(jù)庫的物理完整性和數(shù)據(jù)庫留駐的計算機系統(tǒng)硬件可靠性與安全性有關,也與環(huán)境的安全保障措施有關。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)43

(2)數(shù)據(jù)庫的完整性在邏輯完整性方面,要求保持數(shù)據(jù)庫邏輯結(jié)構的完整性,需要嚴格控制數(shù)據(jù)庫的創(chuàng)立與刪除、庫表的建立、刪除和更改的操作,這些操作只能允許具有數(shù)據(jù)庫擁有者或系統(tǒng)管理員權限的人才能夠進行。邏輯完整性還包括數(shù)據(jù)庫結(jié)構和庫表結(jié)構設計的合理性,盡量減少字段與字段之間、庫表與庫表之間不必要的關聯(lián),減少不必要的冗余字段,防止發(fā)生修改一個字段的值影響其他字段的情況。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)44

(2)數(shù)據(jù)庫的完整性在元素完整性方面,元素完整性主要是指保持數(shù)據(jù)字段內(nèi)容的正確性與準確性。元素完整性需要由DBMS、應用軟件的開發(fā)者和用戶共同完成。(3)可用性

確保數(shù)據(jù)庫中的數(shù)據(jù)不因人為和自然原因?qū)κ跈嘤脩舨豢捎谩?023/2/5計算機系統(tǒng)安全原理與技術(第2版)45(4)可控性對數(shù)據(jù)操作和數(shù)據(jù)庫事件的監(jiān)控屬性。(5)可存活性數(shù)據(jù)庫系統(tǒng)在遭受攻擊或發(fā)生錯誤的情況下,能夠繼續(xù)提供核心服務并及時恢復全部服務。(6)隱私性保護使用主題的個人隱私不被泄露和濫用。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)462023/2/5計算機系統(tǒng)安全原理與技術(第2版)472.數(shù)據(jù)庫的安全策略

數(shù)據(jù)庫的安全策略是指導信息安全的高級準則,即組織、管理、保護和處理敏感信息的法律、規(guī)章及方法的集合。它包括安全管理策略和訪問控制策略。安全機制是用來實現(xiàn)和執(zhí)行各種安全策略的功能的集合,這些功能可以由硬件、軟件或固件來實現(xiàn)。數(shù)據(jù)庫的安全策略可以分為:按實際要求決定粒度大小策略款策略或嚴策略最小特權策略與內(nèi)容有關的訪問控制策略上下文相關的訪問控制策略與歷史有關的訪問控制按存取類型控制策略2023/2/5計算機系統(tǒng)安全原理與技術(第2版)482023/2/5計算機系統(tǒng)安全原理與技術(第2版)49數(shù)據(jù)庫安全存取控制

用戶認證

訪問控制加密存儲2023/2/5計算機系統(tǒng)安全原理與技術(第2版)501.用戶認證

用戶認證通過核對用戶的名字或身份(ID),決定該用戶對系統(tǒng)的使用權。數(shù)據(jù)庫系統(tǒng)不允許一個未經(jīng)授權的用戶對數(shù)據(jù)庫進行操作。DBMS認證在操作系統(tǒng)認證之后進行。(兩次認證)2.訪問控制數(shù)據(jù)庫的訪問控制難度遠大于操作系統(tǒng)。訪問控制的粒度可以到字段、記錄級別。字段、記錄、數(shù)據(jù)表之間關聯(lián)度高,控制復雜。數(shù)據(jù)庫內(nèi)數(shù)據(jù)記錄,表的數(shù)量龐大,控制規(guī)模遠大于操作系統(tǒng)的訪問控制規(guī)模。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)51數(shù)據(jù)庫中常用的訪問控制方法(1)

DAC和MAC在商業(yè)數(shù)據(jù)庫DBMS系統(tǒng)中采用DAC,軍事安全中采用MAC。(2)RBAC屬于中立型訪問控制模型,既可以實現(xiàn)DAC也可以實現(xiàn)MAC,但是無法實現(xiàn)對未知用戶的訪問控制和委托授權。在網(wǎng)絡環(huán)境下使用受限。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)522023/2/5計算機系統(tǒng)安全原理與技術(第2版)53

(3)視圖機制(數(shù)據(jù)庫目前采用的機制)有了視圖機制,就可以在設計數(shù)據(jù)庫應用系統(tǒng)時,對不同的用戶定義不同的視圖,使機密數(shù)據(jù)不出現(xiàn)在不應看到這些數(shù)據(jù)的用戶視圖上。即通過定義不同的視圖及有選擇地授予視圖上的權限,可以將用戶、組或角色限制在不同的數(shù)據(jù)子集內(nèi)。(4)基于證書的訪問控制利用PKI和PMI技術進行訪問控制,缺點是在跨安全域的訪問中收到限制。(5)信任管理1996年提出,用于WEB環(huán)境下訪問控制?;诠€密碼體制實現(xiàn)。(6)數(shù)字版權管理DMR主要針對客戶端的數(shù)據(jù)內(nèi)容進行權限管理,只解決了訪問控制中的部分問題。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)54(7)訪問控制新技術UCON將傳統(tǒng)訪問控制技術(封閉環(huán)境,服務器端資源)、信任管理(開放網(wǎng)絡環(huán)境,服務器端資源)和數(shù)字版權管理(開放網(wǎng)絡環(huán)境,客戶端資源)統(tǒng)一在一個框架下,解決所有問題域下的訪問控制問題。將要保護的數(shù)字資源與其所處的系統(tǒng)環(huán)境相分離(主機、網(wǎng)絡),實現(xiàn)對數(shù)字資源的連續(xù)保護。UCON擴展了訪問控制的概念,定義了授權、義務和條件三個決定性因素。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)552023/2/5計算機系統(tǒng)安全原理與技術(第2版)56

3.加密存儲(1)數(shù)據(jù)庫加密方式:庫內(nèi)加密、庫外加密庫內(nèi)加密:在DBMS內(nèi)核實現(xiàn),加、解密對用戶和應用透明。缺點:系統(tǒng)負擔大、密鑰管理風險大庫外加密:在DBMS之外進行,DBMS管理密文。優(yōu)點:減輕DBMS和服務器的負擔、密鑰與密文分別存放提高安全性、可以實現(xiàn)網(wǎng)上端到端的加密傳輸。缺點:影響數(shù)據(jù)庫的部分功能。(2)影響數(shù)據(jù)庫加密的關鍵因素加密粒度加密算法密鑰管理2023/2/5計算機系統(tǒng)安全原理與技術(第2版)572023/2/5計算機系統(tǒng)安全原理與技術(第2版)58數(shù)據(jù)庫的完整性控制數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。它包括:物理完整性、邏輯完整性、元素取值的準確性與正確性。數(shù)據(jù)的完整性和安全性是兩個不同的概念。前者是為了防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),防止錯誤信息的輸入和輸出,而后者是保護數(shù)據(jù)庫防止惡意的破壞和非法的存取。DBMS中檢查數(shù)據(jù)是否滿足完整性條件的機制稱為完整性檢查。提供定義完整性約束條件的機制提供完整性檢查的方法違約處理2023/2/5計算機系統(tǒng)安全原理與技術(第2版)59數(shù)據(jù)庫的完整性保證的具體方法

1.設置觸發(fā)器

觸發(fā)器可以完成以下功能:(1)檢查取值類型與范圍:檢查每個字段輸入數(shù)據(jù)的類型與該字段的類型是否一致。(2)依據(jù)狀態(tài)限制:指為保證整個數(shù)據(jù)庫的完整性而設置的一些限制,數(shù)據(jù)庫的值在任何時候都不應該違反這些限制。(3)依據(jù)業(yè)務限制:指為了使數(shù)據(jù)庫的修改滿足數(shù)據(jù)庫存儲內(nèi)容的業(yè)務要求,而作出相應的限制。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)60

2.兩階段提交為了保證數(shù)據(jù)更新結(jié)果的正確性,必須防止在數(shù)據(jù)更新過程中發(fā)生處理程序中斷或出現(xiàn)錯誤。解決這個問題的辦法是在DBMS中采用兩階段提交(更新)技術。第一階段稱為準備階段。第二階段為提交階段,其工作是對需要更新的字段進行真正地修改,這種修改是永久性的。兩階段更新意向階段收集需要更新的資源不進行更新操作該階段可以重復無數(shù)次提交階段做提交標記更新數(shù)據(jù)庫清除提交標記該階段可以執(zhí)行無數(shù)次舉例說明假定數(shù)據(jù)庫中包含某公司的辦公用品清單。公司中心倉庫存有各種辦公用品,和各部門的辦公用品申請單。各部門有預算清單中心倉庫管理員需要監(jiān)控現(xiàn)有供應量,以便在現(xiàn)存的供應品不足時定貨。假設會計部先申請50箱文件夾,現(xiàn)有107箱庫存,當庫存小于100箱時,需要定貨。執(zhí)行步驟倉庫核對數(shù)據(jù)庫中是否有50箱文件夾,若沒有,拒絕請求,事務結(jié)束。若庫存充足,從數(shù)據(jù)庫中扣除50箱(107-50=57)。倉庫向會計部的辦公用品預算收取50箱的文件夾的費用。查看庫存,若低于100箱,生成定貨提示。準備交貨,把50箱文件夾送到會計部。分析故障出在第一步結(jié)束時,整個事務可以重新開始,不受影響。故障出在2-4步時,會導致數(shù)據(jù)庫中的值不一致。而且不能重新進行事務,這會導致重復扣款或重復收費或重復送貨。兩階段更新操作意向階段檢查數(shù)據(jù)庫中commit_flag值。若該值已經(jīng)設置,則意向階段不再執(zhí)行。比較庫存的文件夾箱數(shù)和需求量,若需求量大于庫存,停止。計算tclips=onhand-requisition獲得budget,目前應獲得會計部的辦公品預算。計算tbudget=budget-cost,cost指50箱文件夾的成本。檢查tclips是否低于定貨界限,若是,設置treorder=true,否則設置treorder=false。提交階段在數(shù)據(jù)庫中設置commit_flag標志。復制tclips到數(shù)據(jù)庫中的clips。復制treorder到數(shù)據(jù)庫中的reorder。準備向會計部發(fā)送文件夾的通知。在日志中標明已完成事務。清除commit_flag標志。分析意向階段如果出錯,可以重復執(zhí)行無數(shù)次。進入提交階段時,先設置commit_flag,此后數(shù)據(jù)庫將不再執(zhí)行意向階段的任何步驟。提交階段如果出錯,可以重復執(zhí)行無數(shù)次。若事務操作結(jié)束而未清除commit_flag標志時,系統(tǒng)出錯,則通過向前檢查日志的方法,將已經(jīng)提交,但沒有清除commit_flag標志的事務找出來,清除commit_flag標志。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)68

3.糾錯與恢復許多DBMS提供數(shù)據(jù)庫數(shù)據(jù)的糾錯功能,主要方法是采用冗余的辦法,下面介紹幾種冗余糾錯的技術:(1)附加校驗糾錯碼(2)使用鏡像技術(3)恢復(用日志執(zhí)行恢復操作)2023/2/5計算機系統(tǒng)安全原理與技術(第2版)694.數(shù)據(jù)庫的并發(fā)控制

數(shù)據(jù)庫系統(tǒng)通常支持多用戶同時訪問數(shù)據(jù)庫,為了有效地利用數(shù)據(jù)庫資源,可能多個程序或一個程序的多個進程并行地運行,這就是數(shù)據(jù)庫的并發(fā)操作。當多個用戶同時讀寫同一個字段的時候,會存取不正確的數(shù)據(jù),或破壞數(shù)據(jù)庫數(shù)據(jù)的一致性。數(shù)據(jù)不一致總是由兩個因素造成:一是對數(shù)據(jù)的修改,二是并發(fā)操作的發(fā)生。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)70并發(fā)操作帶來的數(shù)據(jù)不一致性包括三類:1.丟失修改(LostUpdate)2.不可重復讀(Non-RepeableRead)3.讀“臟”數(shù)據(jù)(DirtyRead)5.審計監(jiān)視和記錄用戶對數(shù)據(jù)庫所施加的各種操作機制。審計粒度與對象的選擇:時間、空間消耗問題。審計日志不一定能反映實際訪問情況,因此在決定需要記錄哪些操作時需要斟酌。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)716.可信記錄保持在記錄的生命周期內(nèi)保證記錄無法被刪除、隱藏或篡改,并且無法恢復或推測已被刪除的記錄。重點防止內(nèi)部人員惡意篡改和銷毀記錄。主要技術:一次寫入多次讀取可信索引可信遷移可信刪除2023/2/5計算機系統(tǒng)安全原理與技術(第2版)722023/2/5計算機系統(tǒng)安全原理與技術(第2版)73數(shù)據(jù)庫的備份與恢復數(shù)據(jù)庫管理系統(tǒng)必須具有把數(shù)據(jù)庫從錯誤狀態(tài)恢復到某一已知的正確狀態(tài)(亦稱為一致狀態(tài)或完整狀態(tài))的功能,這就是數(shù)據(jù)庫的恢復。數(shù)據(jù)庫系統(tǒng)所采用的恢復技術是否行之有效,不僅對系統(tǒng)的可靠程度起著決定性作用,而且對系統(tǒng)的運行效率也有很大影響,是衡量系統(tǒng)性能優(yōu)劣的重要指標。2023/2/5計算機系統(tǒng)安全原理與技術(第2版)74

1.故障的種類(1)事務內(nèi)部的故障事務沒有達到預期的終點例如:運算溢出、并發(fā)事務死鎖等(2)系統(tǒng)故障造成系統(tǒng)停止運轉(zhuǎn)的任何事件例如:硬件錯誤,停電,操作系統(tǒng)故障等又被稱為“軟故障”(3)介質(zhì)故障被稱為“硬故障”指外存故障,例如:磁盤損壞,磁頭碰撞,電磁干擾等。(4)人為破壞黑客攻擊,計算

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論