數(shù)據(jù)庫安全(專題報(bào)告)_第1頁
數(shù)據(jù)庫安全(專題報(bào)告)_第2頁
數(shù)據(jù)庫安全(專題報(bào)告)_第3頁
數(shù)據(jù)庫安全(專題報(bào)告)_第4頁
數(shù)據(jù)庫安全(專題報(bào)告)_第5頁
已閱讀5頁,還剩90頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

數(shù)據(jù)庫安全計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院計(jì)算機(jī)系統(tǒng)安全性概論三類計(jì)算機(jī)系統(tǒng)安全性問題技術(shù)安全類管理安全類政策法律類計(jì)算機(jī)系統(tǒng)安全性概論可信計(jì)算機(jī)系統(tǒng)評(píng)測(cè)標(biāo)準(zhǔn)為降低進(jìn)而消除對(duì)系統(tǒng)的安全攻擊,各國引用或制定了一系列安全標(biāo)準(zhǔn)TCSEC(桔皮書)TDI(紫皮書)可信計(jì)算機(jī)系統(tǒng)評(píng)測(cè)標(biāo)準(zhǔn)1985年美國國防部(DoD)正式頒布《DoD可信計(jì)算機(jī)系統(tǒng)評(píng)估標(biāo)準(zhǔn)》(簡(jiǎn)稱TCSEC或DoD85)TCSEC又稱桔皮書TCSEC標(biāo)準(zhǔn)的目的

提供一種標(biāo)準(zhǔn),使用戶可以對(duì)其計(jì)算機(jī)系統(tǒng)內(nèi)敏感信息安全操作的可信程度做評(píng)估。給計(jì)算機(jī)行業(yè)的制造商提供一種可循的指導(dǎo)規(guī)則,使其產(chǎn)品能夠更好地滿足敏感應(yīng)用的安全需求。可信計(jì)算機(jī)系統(tǒng)評(píng)測(cè)標(biāo)準(zhǔn)1991年4月美國NCSC(國家計(jì)算機(jī)安全中心)頒布了《可信計(jì)算機(jī)系統(tǒng)評(píng)估標(biāo)準(zhǔn)關(guān)于可信數(shù)據(jù)庫系統(tǒng)的解釋》(TrustedDatabaseInterpretation簡(jiǎn)稱TDI)TDI又稱紫皮書。它將TCSEC擴(kuò)展到數(shù)據(jù)庫管理系統(tǒng)。TDI中定義了數(shù)據(jù)庫管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)中需滿足和用以進(jìn)行安全性級(jí)別評(píng)估的標(biāo)準(zhǔn)??尚庞?jì)算機(jī)系統(tǒng)評(píng)測(cè)標(biāo)準(zhǔn)TDI/TCSEC標(biāo)準(zhǔn)的基本內(nèi)容TDI與TCSEC一樣,從四個(gè)方面來描述安全性級(jí)別劃分的指標(biāo)安全策略責(zé)任保證文檔TCSEC/TDI安全級(jí)別劃分安全級(jí)別定義A1驗(yàn)證設(shè)計(jì)(VerifiedDesign)B3安全域(SecurityDomains)

B2結(jié)構(gòu)化保護(hù)(StructuralProtection)

B1標(biāo)記安全保護(hù)(LabeledSecurityProtection)

C2受控的存取保護(hù)(ControlledAccessProtection)

C1自主安全保護(hù)(DiscretionarySecurityProtection)

D最小保護(hù)(MinimalProtection)可信計(jì)算機(jī)系統(tǒng)評(píng)測(cè)標(biāo)準(zhǔn)四組(division)七個(gè)等級(jí)DC(C1,C2)B(B1,B2,B3)A(A1)按系統(tǒng)可靠或可信程度逐漸增高各安全級(jí)別之間具有一種偏序向下兼容的關(guān)系,即較高安全性級(jí)別提供的安全保護(hù)要包含較低級(jí)別的所有保護(hù)要求,同時(shí)提供更多或更完善的保護(hù)能力。

表示該級(jí)不提供對(duì)該指標(biāo)的支持;表示該級(jí)新增的對(duì)該指標(biāo)的支持;表示該級(jí)對(duì)該指標(biāo)的支持與相鄰低一級(jí)的等級(jí)一樣;表示該級(jí)對(duì)該指標(biāo)的支持較下一級(jí)有所增加或改動(dòng)。

數(shù)據(jù)庫概述

數(shù)據(jù)庫的安全特性數(shù)據(jù)庫的保護(hù)

Oracle數(shù)據(jù)庫的安全性措施

云計(jì)算時(shí)代的數(shù)據(jù)庫安全

數(shù)據(jù)庫安全的發(fā)展趨勢(shì)數(shù)據(jù)庫的發(fā)展史數(shù)據(jù)庫數(shù)據(jù)庫是提供數(shù)據(jù)的基地,它能保存數(shù)據(jù)并能使用戶方便的訪問數(shù)據(jù)。DBMS數(shù)據(jù)庫管理系統(tǒng)(DBMS)通常由這三部分組成:數(shù)據(jù)庫定義語言(DDL);數(shù)據(jù)操縱語言(DML);數(shù)據(jù)庫管理例行程序;數(shù)據(jù)庫管理系統(tǒng)(DBMS)DBMS的功能有正確的編譯功能,能正確執(zhí)行規(guī)定的操作。能正確執(zhí)行數(shù)據(jù)庫命令。能保證數(shù)據(jù)的安全性、完整性,能抵御一定程度的物理破壞,能維護(hù)和提交數(shù)據(jù)庫內(nèi)容。能識(shí)別用戶、分配授權(quán)和進(jìn)行訪問控制,包括身份識(shí)別和驗(yàn)證。順利執(zhí)行數(shù)據(jù)庫訪問,保證網(wǎng)絡(luò)通信功能。

數(shù)據(jù)庫安全包含兩層含義:第一層是指系統(tǒng)運(yùn)行安全主要包括:法律、政策的保護(hù),如用戶是否有合法權(quán)利,政策是否允許等物理控制安全,如機(jī)房加鎖等硬件運(yùn)行安全操作系統(tǒng)安全,如數(shù)據(jù)文件是否保護(hù)災(zāi)害、故障恢復(fù)避免和解除死鎖防止電磁信息泄漏數(shù)據(jù)庫安全的含義第二層是指數(shù)據(jù)庫系統(tǒng)信息安全主要包括:用戶口令鑒別用戶存取權(quán)限控制數(shù)據(jù)存取權(quán)限、方式控制審計(jì)跟蹤數(shù)據(jù)加密數(shù)據(jù)庫安全的含義數(shù)據(jù)庫系統(tǒng)的安全性要求安全問題注釋物理上的數(shù)據(jù)庫完整性預(yù)防數(shù)據(jù)庫數(shù)據(jù)物理方面的問題。如掉電,以及當(dāng)被災(zāi)禍破壞后能重構(gòu)數(shù)據(jù)庫邏輯上的數(shù)據(jù)庫完整性保持?jǐn)?shù)據(jù)的結(jié)構(gòu)。如一個(gè)字段的值的修改不至于影響其他字段元素的完整性包含在每個(gè)元素中的數(shù)據(jù)是準(zhǔn)確的可審計(jì)性能夠追蹤到誰訪問修改過數(shù)據(jù)的元素訪問控制允許用戶只訪問被批準(zhǔn)的數(shù)據(jù),以及限制不同的用戶有不同的訪問模式,如讀或?qū)懹脩粽J(rèn)證確保每個(gè)用戶被正確地識(shí)別,既便于審計(jì)跟蹤,也為了限制對(duì)特定的數(shù)據(jù)進(jìn)行訪問可獲(用)性用戶一般可以訪問數(shù)據(jù)庫以及所有被批準(zhǔn)訪問的數(shù)據(jù)數(shù)據(jù)庫系統(tǒng)的安全框架

數(shù)據(jù)庫系統(tǒng)的安全除依賴自身內(nèi)部的安全機(jī)制外,還與外部網(wǎng)絡(luò)環(huán)境、應(yīng)用環(huán)境、從業(yè)人員素質(zhì)等因素息息相關(guān)。

因此,從廣義上講,數(shù)據(jù)庫系統(tǒng)的安全框架可以劃分為三個(gè)層次,分別為:網(wǎng)絡(luò)系統(tǒng)層次、操作系統(tǒng)層次、數(shù)據(jù)庫管理系統(tǒng)層次。網(wǎng)絡(luò)系統(tǒng)層次的安全

網(wǎng)絡(luò)系統(tǒng)是數(shù)據(jù)庫應(yīng)用的外部環(huán)境和基礎(chǔ),數(shù)據(jù)庫系統(tǒng)要發(fā)揮其強(qiáng)大作用離不開網(wǎng)絡(luò)系統(tǒng)的支持,數(shù)據(jù)庫系統(tǒng)的用戶(如異地用戶、分布式用戶)也要通過網(wǎng)絡(luò)才能訪問數(shù)據(jù)庫的數(shù)據(jù)。所以,數(shù)據(jù)庫的安全首先依賴于網(wǎng)絡(luò)系統(tǒng),網(wǎng)絡(luò)系統(tǒng)的安全是數(shù)據(jù)庫安全的第一道屏障,外部入侵首先就是從入侵網(wǎng)絡(luò)系統(tǒng)開始的。網(wǎng)絡(luò)系統(tǒng)層次的安全防范技術(shù)有很多種,主要有防火墻、入侵檢測(cè)技術(shù)等。操作系統(tǒng)層次的安全操作系統(tǒng)是大型數(shù)據(jù)庫系統(tǒng)的運(yùn)行平臺(tái),為數(shù)據(jù)庫系統(tǒng)提供一定程度的安全保護(hù)。主要安全技術(shù)有操作系統(tǒng)安全策略、安全管理策略、數(shù)據(jù)安全等方面。其中操作系統(tǒng)安全策略用于配置本地計(jì)算機(jī)的安全設(shè)置,包括密碼策略、賬戶鎖定策略、審核策略、IP安全策略、用戶權(quán)利指派、加密數(shù)據(jù)的恢復(fù)代理及其他安全選項(xiàng),具體可以體現(xiàn)在用戶賬戶、口令、訪問權(quán)限、審計(jì)等方面。安全管理策略是指網(wǎng)絡(luò)管理員對(duì)系統(tǒng)實(shí)施安全管理所采取的方法及策略。針對(duì)不同的操作系統(tǒng)、網(wǎng)絡(luò)環(huán)境,需要采取的安全管理策略一般也不盡相同,其核心是保證服務(wù)器的安全和分配好各類用戶的權(quán)限。數(shù)據(jù)安全主要包括:數(shù)據(jù)加密技術(shù)、數(shù)據(jù)備份、數(shù)據(jù)存儲(chǔ)的安全性、數(shù)據(jù)傳輸?shù)陌踩缘取?梢圆捎玫募夹g(shù)很多,主要有Kerberos認(rèn)證,IPSec,SSL,TLS,VPN等技術(shù)。數(shù)據(jù)庫管理系統(tǒng)層次的安全當(dāng)前面兩個(gè)層次已經(jīng)被突破的情況下,數(shù)據(jù)庫管理系統(tǒng)在一定程度上能保障數(shù)據(jù)庫數(shù)據(jù)的安全。目前市場(chǎng)上流行的關(guān)系數(shù)據(jù)庫管理系統(tǒng)的安全性功能都很弱,所以,數(shù)據(jù)庫的安全不能得到保障,這就要求數(shù)據(jù)庫管理系統(tǒng)必須有一套強(qiáng)有力的安全機(jī)制。數(shù)據(jù)庫管理系統(tǒng)本身提供的用戶名/口令識(shí)別,視圖、使用權(quán)限控制,審計(jì)等管理措施,大型數(shù)據(jù)庫管理系統(tǒng)Oracle,Sybase,Ingress等均有此功能。應(yīng)用程序設(shè)置的控制管理,如使用較普遍的FoxBASE,F(xiàn)oxPro等。作為數(shù)據(jù)庫用戶,最關(guān)心自身數(shù)據(jù)資料的安全,特別是用戶的查詢權(quán)限問題數(shù)據(jù)庫安全的威脅對(duì)數(shù)據(jù)庫安全的威脅或侵犯大致可以包括蓄意的侵犯或敵意的攻擊特洛伊木馬與隱秘通道數(shù)據(jù)庫命名硬件或軟件的故障/錯(cuò)誤導(dǎo)致的數(shù)據(jù)丟失偶然的、無意的侵犯或破壞人為的失誤破密

數(shù)據(jù)庫概述

數(shù)據(jù)庫的安全特性數(shù)據(jù)庫的保護(hù)

Oracle數(shù)據(jù)庫的安全性措施

數(shù)據(jù)庫安全的發(fā)展趨勢(shì)2數(shù)據(jù)庫的安全特性2.1.?dāng)?shù)據(jù)獨(dú)立性數(shù)據(jù)獨(dú)立于應(yīng)用程序之外。理論上數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨(dú)立性分為兩種:物理獨(dú)立性。數(shù)據(jù)庫的物理結(jié)構(gòu)的變化不影響數(shù)據(jù)庫的應(yīng)用結(jié)構(gòu),從而也就不影響其相應(yīng)的應(yīng)用程序。這里的物理結(jié)構(gòu)是指數(shù)據(jù)庫的物理位置、物理設(shè)備等。邏輯獨(dú)立性。數(shù)據(jù)庫邏輯結(jié)構(gòu)的變化不會(huì)影響用戶的應(yīng)用程序。數(shù)據(jù)類型的修改、增加、改變各表之間的聯(lián)系都不會(huì)導(dǎo)致應(yīng)用程序的修改。

這兩種數(shù)據(jù)獨(dú)立性都要靠DBMS來實(shí)現(xiàn)。到目前為止,物理獨(dú)立性已經(jīng)能基本實(shí)現(xiàn),但邏輯獨(dú)立性實(shí)現(xiàn)起來非常困難,數(shù)據(jù)結(jié)構(gòu)一旦發(fā)生變化,一般情況下,相應(yīng)的應(yīng)用程序都要作或多或少的修改。2.2數(shù)據(jù)安全性完整的數(shù)據(jù)庫對(duì)數(shù)據(jù)安全性采取了以下措施:將數(shù)據(jù)庫中需要保護(hù)的部分與其他部分相隔離。使用授權(quán)規(guī)則。這是數(shù)據(jù)庫系統(tǒng)經(jīng)常使用的一個(gè)辦法,數(shù)據(jù)庫給用戶ID號(hào)和口令、權(quán)限。當(dāng)用戶用此ID號(hào)和口令登錄后,就會(huì)獲得相應(yīng)的權(quán)限。不同的用戶或操作會(huì)有不同的權(quán)限。比如,對(duì)于一個(gè)表,某人有修改權(quán),而其他人只有查詢權(quán)。將數(shù)據(jù)加密,以密碼的形式存于數(shù)據(jù)庫內(nèi)。2.3數(shù)據(jù)的完整性數(shù)據(jù)的完整性主要是指:防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),防止錯(cuò)誤信息的輸入和輸出。這一術(shù)語用來泛指與損壞和丟失相對(duì)的數(shù)據(jù)狀態(tài)。它通常表明數(shù)據(jù)在可靠性與準(zhǔn)確性上是可信賴的,同時(shí)也意味著數(shù)據(jù)有可能是無效的或不完整的。2.4

并發(fā)控制

如果數(shù)據(jù)庫應(yīng)用要實(shí)現(xiàn)多用戶共享數(shù)據(jù),就可能在同一時(shí)刻多個(gè)用戶要存取數(shù)據(jù),這種事件叫做并發(fā)事件。當(dāng)一個(gè)用戶取出數(shù)據(jù)進(jìn)行修改,修改存入數(shù)據(jù)庫之前如有其他用戶再取此數(shù)據(jù),那么讀出的數(shù)據(jù)就是不正確的。這時(shí)就需要對(duì)這種并發(fā)操作施行控制,排除和避免這種錯(cuò)誤的發(fā)生,保證數(shù)據(jù)的正確性。

2.5

故障恢復(fù)當(dāng)數(shù)據(jù)庫系統(tǒng)運(yùn)行時(shí)出現(xiàn)物理或邏輯上的錯(cuò)誤時(shí),如何盡快將它恢復(fù)正常,這就是數(shù)據(jù)庫系統(tǒng)的故障恢復(fù)功能。數(shù)據(jù)庫的故障主要包括:事務(wù)內(nèi)部的故障系統(tǒng)范圍內(nèi)的故障介質(zhì)故障計(jì)算機(jī)病毒與黑客等。事務(wù)內(nèi)部的故障

事務(wù)(Transaction)是指并發(fā)控制的單位,它是一個(gè)操作序列。在這個(gè)序列中的所有操作只有兩種行為,要么全都執(zhí)行,要么全都不執(zhí)行。因此,事務(wù)是一個(gè)不可分割的單位。事務(wù)用COMMIT語句提交給數(shù)據(jù)庫,用ROLLBACK語句撤銷已經(jīng)完成的操作事務(wù)內(nèi)部的故障多發(fā)生于數(shù)據(jù)的不一致性,主要表現(xiàn)為以下幾種:丟失修改。兩個(gè)事務(wù)T1和T2讀入同一數(shù)據(jù),T2提交的結(jié)果破壞了T1提交的結(jié)果,T1對(duì)數(shù)據(jù)庫的修改丟失,造成數(shù)據(jù)庫中數(shù)據(jù)錯(cuò)誤。不能重復(fù)讀。事務(wù)T1讀取某一數(shù)據(jù),事務(wù)T2讀取并修改了同一數(shù)據(jù),T1為了對(duì)讀取值進(jìn)行校對(duì)再讀取此數(shù)據(jù),便得到了不同的結(jié)果。例如,T1讀取數(shù)據(jù)B=200,T2也讀取B并把它修改為300,那么T1再讀取數(shù)據(jù)B得到300,與第一次讀取的數(shù)值不一致。“臟”數(shù)據(jù)的讀出,即不正確數(shù)據(jù)的讀出。T1修改某一數(shù)據(jù),T2讀取同一數(shù)據(jù),但T1由于某種原因被撤銷,則T2讀到的數(shù)據(jù)為“臟”數(shù)據(jù)。例如,T1讀取數(shù)據(jù)B值100修改為200,則T2讀取B值為200,但由于事務(wù)T1被撤銷,其所做的修改宣布無效,B值恢復(fù)為100,而T2讀到的數(shù)據(jù)是200,就與數(shù)據(jù)庫內(nèi)容不一致了。系統(tǒng)范圍內(nèi)的故障數(shù)據(jù)庫系統(tǒng)故障又稱為數(shù)據(jù)庫軟故障,是指系統(tǒng)突然停止運(yùn)行時(shí)造成的數(shù)據(jù)庫故障。如CPU故障、突然斷電、操作系統(tǒng)故障,這些故障不會(huì)破壞數(shù)據(jù)庫,但會(huì)影響正在運(yùn)行的所有事務(wù),因?yàn)閿?shù)據(jù)庫緩沖區(qū)的內(nèi)容會(huì)全部丟失,運(yùn)行的事務(wù)非正常終止,從而造成數(shù)據(jù)庫處于一種不正確的狀態(tài)。這種故障對(duì)于一個(gè)需要不停運(yùn)行的數(shù)據(jù)庫來講,損失是不可估量的。恢復(fù)子系統(tǒng)必須在系統(tǒng)重新啟動(dòng)時(shí)讓所有非正常終止事務(wù)ROLLBACK,把數(shù)據(jù)庫恢復(fù)到正確的狀態(tài)。介質(zhì)故障。

介質(zhì)故障又稱硬故障,主要指外存故障,如磁盤磁頭碰撞,瞬時(shí)的強(qiáng)磁場(chǎng)干擾。這類故障會(huì)破壞數(shù)據(jù)庫或部分?jǐn)?shù)據(jù)庫,并影響正在使用數(shù)據(jù)庫的所有事務(wù)。所以,這類故障的破壞性很大。計(jì)算機(jī)病毒與黑客

病毒發(fā)作后造成的數(shù)據(jù)庫數(shù)據(jù)的損壞必須要求操作者自己去恢復(fù)。對(duì)于黑客,更需要計(jì)算機(jī)數(shù)據(jù)庫加強(qiáng)安全管理。這種安全管理對(duì)于那些機(jī)密性的數(shù)據(jù)庫顯得尤為重要。

數(shù)據(jù)庫概述

數(shù)據(jù)庫的安全特性

數(shù)據(jù)庫的保護(hù)

Oracle數(shù)據(jù)庫的安全性措施

云計(jì)算時(shí)代的數(shù)據(jù)庫安全

數(shù)據(jù)庫安全的發(fā)展趨勢(shì)3數(shù)據(jù)庫的保護(hù)數(shù)據(jù)庫的保護(hù)是數(shù)據(jù)庫運(yùn)行過程中一個(gè)不可忽視的方面。數(shù)據(jù)庫系統(tǒng)必須建立自己的保護(hù)機(jī)制,提供數(shù)據(jù)保護(hù)功能。數(shù)據(jù)庫的保護(hù)主要包含數(shù)據(jù)庫的安全性、完整性、并發(fā)控制和數(shù)據(jù)庫恢復(fù)等內(nèi)容。3.1數(shù)據(jù)庫的安全性安全性問題是所有計(jì)算機(jī)系統(tǒng)共有的問題,并不是數(shù)據(jù)庫系統(tǒng)特有的,但由于數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)量龐大且多用戶存取,安全性問題就顯得尤其突出。由于安全性問題有系統(tǒng)問題與人為問題,所以一方面用戶可以從法律、政策、倫理、道德等方面控制約束人們對(duì)數(shù)據(jù)庫的安全使用;另一方面還可以從物理設(shè)備、操作系統(tǒng)等方面加強(qiáng)保護(hù),保證數(shù)據(jù)庫的安全;另外,也可以從數(shù)據(jù)庫本身實(shí)現(xiàn)數(shù)據(jù)庫的安全性保護(hù)。計(jì)算機(jī)系統(tǒng)安全模型數(shù)據(jù)庫安全性常用技術(shù)用戶標(biāo)識(shí)和鑒定存取控制視圖審計(jì)數(shù)據(jù)庫加密3.1.1用戶標(biāo)識(shí)和鑒定用戶標(biāo)識(shí)與鑒別(Identification&Authentication)系統(tǒng)提供的最外層安全保護(hù)措施基本方法:☆系統(tǒng)提供一定的方式讓用戶標(biāo)識(shí)自己的名字或身份;☆系統(tǒng)內(nèi)部記錄著所有合法用戶的標(biāo)識(shí);☆每次用戶要求進(jìn)入系統(tǒng)時(shí),由系統(tǒng)核對(duì)用戶提供的身份標(biāo)識(shí);☆通過鑒定后才提供機(jī)器使用權(quán)☆用戶標(biāo)識(shí)和鑒定可以重復(fù)多次用戶標(biāo)識(shí)自己的名字或身份方法1:用戶名/口令簡(jiǎn)單易行,但容易被人竊取方法2:每個(gè)用戶預(yù)先約定好一個(gè)計(jì)算過程或者函數(shù)系統(tǒng)提供一個(gè)隨機(jī)數(shù)用戶根據(jù)自己預(yù)先約定的計(jì)算過程或者函數(shù)進(jìn)行計(jì)算系統(tǒng)根據(jù)用戶計(jì)算結(jié)果是否正確鑒定用戶身份3.1.2存取控制存取控制機(jī)制的組成定義存取權(quán)限檢查存取權(quán)限用戶權(quán)限定義和合法權(quán)檢查機(jī)制一起組成了DBMS的安全子系統(tǒng)常用存取控制方法自主存取控制(DiscretionaryAccessControl,簡(jiǎn)稱DAC)

C2級(jí)

靈活強(qiáng)制存取控制(MandatoryAccessControl,簡(jiǎn)稱MAC)B1級(jí)嚴(yán)格自主存取控制方法同一用戶對(duì)于不同的數(shù)據(jù)對(duì)象有不同的存取權(quán)限不同的用戶對(duì)同一對(duì)象也有不同的權(quán)限用戶還可將其擁有的存取權(quán)限轉(zhuǎn)授給其他用戶自主存取控制方法定義方法GRANT/REVOKEGRANT功能:將對(duì)指定操作對(duì)象的指定操作權(quán)限授予指定的用戶。GRANT語句的一般格式:GRANT<權(quán)限>[,<權(quán)限>]...[ON<對(duì)象類型><對(duì)象名>,<對(duì)象類型><對(duì)象名>]TO<用戶>[,<用戶>]...[WITHGRANTOPTION];SQL收回權(quán)限的功能REVOKE語句的一般格式為:REVOKE<權(quán)限>[,<權(quán)限>]...[ON<對(duì)象類型><對(duì)象名>,<對(duì)象類型><對(duì)象名>]FROM<用戶>[,<用戶>]...;功能:從指定用戶那里收回對(duì)指定對(duì)象的指定權(quán)限強(qiáng)制存取控制方法每一個(gè)數(shù)據(jù)對(duì)象被標(biāo)以一定的密級(jí)每一個(gè)用戶也被授予某一個(gè)級(jí)別的許可證對(duì)于任意一個(gè)對(duì)象,只有具有合法許可證的用戶才可以存取強(qiáng)制存取控制方法主體與客體在MAC中,DBMS所管理的全部實(shí)體被分為主體和客體兩大類主體是系統(tǒng)中的活動(dòng)實(shí)體DBMS所管理的實(shí)際用戶代表用戶的各進(jìn)程客體是系統(tǒng)中的被動(dòng)實(shí)體,是受主體操縱的文件基表索引視圖對(duì)于主體和客體,DBMS為它們每個(gè)實(shí)例(值)指派一個(gè)敏感度標(biāo)記(Label)強(qiáng)制存取控制方法強(qiáng)制存取控制規(guī)則當(dāng)某一用戶(或某一主體)以標(biāo)記label注冊(cè)入系統(tǒng)時(shí),系統(tǒng)要求他對(duì)任何客體的存取必須遵循下面兩條規(guī)則:(1)僅當(dāng)主體的許可證級(jí)別大于或等于客體的密級(jí)時(shí),該主體才能讀取相應(yīng)的客體;(2)僅當(dāng)主體的許可證級(jí)別等于客體的密級(jí)時(shí),該主體才能寫相應(yīng)的客體。3.1.3視圖機(jī)制視圖機(jī)制把要保密的數(shù)據(jù)對(duì)無權(quán)存取這些數(shù)據(jù)的用戶隱藏起來。視圖機(jī)制更主要的功能在于提供數(shù)據(jù)獨(dú)立性,其安全保護(hù)功能太不精細(xì),往往遠(yuǎn)不能達(dá)到應(yīng)用系統(tǒng)的要求。視圖機(jī)制與授權(quán)機(jī)制配合使用:首先用視圖機(jī)制屏蔽掉一部分保密數(shù)據(jù);然后在視圖上面再進(jìn)一步定義存取權(quán)限;間接實(shí)現(xiàn)了支持存取謂詞的用戶權(quán)限定義3.1.4審計(jì)什么是審計(jì)啟用一個(gè)專用的審計(jì)日志(AuditLog)將用戶對(duì)數(shù)據(jù)庫的所有操作記錄在上面DBA可以利用審計(jì)日志中的追蹤信息,找出非法存取數(shù)據(jù)的人C2以上安全級(jí)別的DBMS必須具有審計(jì)功能審計(jì)功能的可選性審計(jì)很費(fèi)時(shí)間和空間DBA可以根據(jù)應(yīng)用對(duì)安全性的要求,靈活地打開或關(guān)閉審計(jì)功能。強(qiáng)制性機(jī)制:用戶識(shí)別和鑒定、存取控制、視圖預(yù)防監(jiān)測(cè)手段:審計(jì)技術(shù)3.1.5數(shù)據(jù)庫加密數(shù)據(jù)庫加密的特點(diǎn):數(shù)據(jù)庫密碼系統(tǒng)應(yīng)采用公開密鑰。因?yàn)閿?shù)據(jù)庫的數(shù)據(jù)是共享的,有權(quán)限的用戶隨時(shí)需要使用密鑰來查詢數(shù)據(jù)。因此,數(shù)據(jù)庫密碼系統(tǒng)宜采用公開密鑰的加密方法。在實(shí)際應(yīng)用時(shí)一般采用改進(jìn)的分組加密算法,使其符合數(shù)據(jù)庫加密的要求。數(shù)據(jù)庫加密的特點(diǎn)多級(jí)密鑰結(jié)構(gòu)。數(shù)據(jù)庫關(guān)系運(yùn)算中參與運(yùn)算的最小單位是字段,查詢路徑依次是庫名、表名、記錄名和字段名。因此,字段是最小的加密單位。也就是說當(dāng)查得一個(gè)數(shù)據(jù)后,該數(shù)據(jù)所在的庫名、表名、記錄名、字段名都應(yīng)是知道的。對(duì)應(yīng)的庫名、表名、記錄名、字段名都應(yīng)該具有自己的子密鑰,這些子密鑰組成了一個(gè)能夠隨時(shí)加、解密的公開密鑰。加密體制加密算法不同層次的加密??梢栽谌齻€(gè)不同層次實(shí)現(xiàn)對(duì)數(shù)據(jù)庫數(shù)據(jù)的加密,這三個(gè)層次分別是OS層、DBMS內(nèi)核層和DBMS外層。在OS層加密。在OS層無法辨認(rèn)數(shù)據(jù)庫文件中的數(shù)據(jù)關(guān)系,從而無法產(chǎn)生合理的密鑰,對(duì)密鑰合理的管理和使用也很難。所以,對(duì)大型數(shù)據(jù)庫來說,在OS層對(duì)數(shù)據(jù)庫文件進(jìn)行加密很難實(shí)現(xiàn)。在DBMS內(nèi)核層實(shí)現(xiàn)加密在DBMS內(nèi)核層實(shí)現(xiàn)加密

這種加密是指數(shù)據(jù)在物理存取之前完成加/解密工作。這種加密方式的優(yōu)點(diǎn)是加密功能強(qiáng),并且加密功能幾乎不會(huì)影響DBMS的功能,可以實(shí)現(xiàn)加密功能與數(shù)據(jù)庫管理系統(tǒng)之間的無縫耦合。其缺點(diǎn)是加密運(yùn)算在服務(wù)器端進(jìn)行,加重了服務(wù)器的負(fù)載,而且DBMS和加密器之間的接口需要DBMS開發(fā)商的支持。在DBMS外層實(shí)現(xiàn)加密在DBMS外層實(shí)現(xiàn)加密。

比較實(shí)際的做法是將數(shù)據(jù)庫加密系統(tǒng)做成DBMS的一個(gè)外層工具,根據(jù)加密要求自動(dòng)完成對(duì)數(shù)據(jù)庫數(shù)據(jù)的加/解密處理。采用這種加密方式進(jìn)行加密,加/解密運(yùn)算可在客戶端進(jìn)行,它的優(yōu)點(diǎn)是不會(huì)加重?cái)?shù)據(jù)庫服務(wù)器的負(fù)載并且可以實(shí)現(xiàn)網(wǎng)上傳輸?shù)募用?,?duì)數(shù)據(jù)庫的最終用戶是完全透明的,不會(huì)影響數(shù)據(jù)庫服務(wù)器的效率。缺點(diǎn)是加密功能會(huì)受到一些限制,與數(shù)據(jù)庫管理系統(tǒng)之間的耦合性稍差。數(shù)據(jù)庫加密的范圍經(jīng)過加密的數(shù)據(jù)庫須經(jīng)得起來自O(shè)S和DBMS的攻擊;另一方面,DBMS要完成對(duì)數(shù)據(jù)庫文件的管理和使用,必須具有能夠識(shí)別部分?jǐn)?shù)據(jù)的條件。因此,只能對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行部分加密。數(shù)據(jù)庫加密的范圍數(shù)據(jù)庫中不能加密的部分包括:索引字段不能加密。為了達(dá)到迅速查詢的目的,數(shù)據(jù)庫文件需要建立一些索引,它們的建立和應(yīng)用必須是明文狀態(tài),否則將失去索引的作用。關(guān)系運(yùn)算的比較字段不能加密。DBMS要組織和完成關(guān)系運(yùn)算,參與并、差、積、商、投影、選擇和連接等操作的數(shù)據(jù)一般都要經(jīng)過條件篩選,這種“條件”選擇項(xiàng)必須是明文,否則DBMS將無法進(jìn)行比較篩選。表間的連接碼字段不能加密。數(shù)據(jù)模型規(guī)范化以后,數(shù)據(jù)庫表之間存在著密切的聯(lián)系,這種相關(guān)性往往是通過“外部編碼”聯(lián)系的,這些編碼若加密就無法進(jìn)行表與表之間的連接運(yùn)算。

數(shù)據(jù)庫加密對(duì)數(shù)據(jù)庫管理系統(tǒng)原有功能的影響。數(shù)據(jù)庫數(shù)據(jù)加密以后,DBMS的一些功能將無法使用。無法實(shí)現(xiàn)對(duì)數(shù)據(jù)制約因素的定義。Sybase數(shù)據(jù)庫系統(tǒng)的規(guī)則定義了數(shù)據(jù)之間的制約因素。數(shù)據(jù)一旦加密,DBMS將無法實(shí)現(xiàn)這一功能,而且,值域的定義也無法進(jìn)行。值得注意的是,數(shù)據(jù)庫中的每個(gè)字段的類型、長度都有具體的限定。數(shù)據(jù)加密時(shí),數(shù)值類型的數(shù)據(jù)只能在數(shù)值范圍內(nèi)加密,日期和字符類型的數(shù)據(jù)也都只能在各自的類型范圍內(nèi)加密,密文長度也不能超過字段限定的長度,否則DBMS將無法接受這些加密過的數(shù)據(jù)。密文數(shù)據(jù)的排序、分組和分類。select語句中的groupby,orderby,having子句分別完成分組、排序、分類等操作。這些子句的操作對(duì)象如果是加密數(shù)據(jù),那么解密后的明文數(shù)據(jù)將失去原語句的分組、排序、分類作用,顯然這不是用戶所需要的。SQL語言中的內(nèi)部函數(shù)將對(duì)加密數(shù)據(jù)失去作用。DBMS對(duì)各種類型數(shù)據(jù)均提供了一些內(nèi)部函數(shù),這些函數(shù)不能直接作用于加密數(shù)據(jù)。DBMS的一些應(yīng)用開發(fā)工具的使用受到限制。3.2數(shù)據(jù)庫中數(shù)據(jù)的完整性數(shù)據(jù)完整性包括數(shù)據(jù)的正確性、有效性和一致性。數(shù)據(jù)類型與值域的約束關(guān)鍵字約束數(shù)據(jù)聯(lián)系的約束3.3數(shù)據(jù)庫并發(fā)控制目前,多數(shù)數(shù)據(jù)庫都是大型多用戶數(shù)據(jù)庫,所以數(shù)據(jù)庫中的數(shù)據(jù)資源必須是共享的。為了充分利用數(shù)據(jù)庫資源,應(yīng)允許多個(gè)用戶并行操作數(shù)據(jù)庫。數(shù)據(jù)庫必須能對(duì)這種并行操作進(jìn)行控制,即并發(fā)控制,以保證數(shù)據(jù)在不同的用戶使用時(shí)的一致性。并發(fā)控制的主要方法是封鎖技術(shù)(Locking)。當(dāng)某事務(wù)修改數(shù)據(jù)時(shí),將數(shù)據(jù)封鎖,這樣在這個(gè)事務(wù)讀取和修改數(shù)據(jù)時(shí),其他的事務(wù)就不能對(duì)數(shù)據(jù)進(jìn)行讀取和修改,直到此事務(wù)解除封鎖。3.4數(shù)據(jù)庫的恢復(fù)恢復(fù)也稱為重載或重入,是指當(dāng)磁盤損壞或數(shù)據(jù)庫崩潰時(shí),通過將備份的內(nèi)容轉(zhuǎn)儲(chǔ)或卸載,使數(shù)據(jù)庫返回到原來狀態(tài)的過程。數(shù)據(jù)庫的恢復(fù)辦法周期性地(如三天一次)對(duì)整個(gè)數(shù)據(jù)庫進(jìn)行轉(zhuǎn)儲(chǔ),把它復(fù)制到備份介質(zhì)中(如磁帶中),作為后備副本,以備恢復(fù)之用。靜態(tài)轉(zhuǎn)儲(chǔ)是指轉(zhuǎn)儲(chǔ)期間不允許對(duì)數(shù)據(jù)庫進(jìn)行任何存取、修改活動(dòng)動(dòng)態(tài)轉(zhuǎn)儲(chǔ)是指在存儲(chǔ)期間允許對(duì)數(shù)據(jù)庫進(jìn)行存取或修改對(duì)數(shù)據(jù)庫的每次修改,都記下修改前后的值,寫入“運(yùn)行日志”數(shù)集中。它與后備副本結(jié)合,可有效地恢復(fù)數(shù)據(jù)庫。利用日志文件恢復(fù)事務(wù)登記日志文件(logging)事務(wù)運(yùn)行過程中,系統(tǒng)把事務(wù)開始、事務(wù)結(jié)束(包括COMMIT和ROLLBACK)以及對(duì)數(shù)據(jù)庫的插入、刪除、修改等每一個(gè)操作作為一個(gè)log記錄存放到日志文件中。登記的次序嚴(yán)格按并行事務(wù)執(zhí)行的時(shí)間次序。同時(shí)遵循“先寫日志文件”的規(guī)則。事務(wù)恢復(fù)從頭掃描日志文件,找出哪些事務(wù)在故障發(fā)生時(shí)已經(jīng)結(jié)束,哪些事務(wù)尚未結(jié)束。對(duì)尚未結(jié)束的事務(wù)進(jìn)行撤銷(也稱為UNDO)處理,對(duì)已經(jīng)結(jié)束的事務(wù)進(jìn)行重做(REDO)處理總之,利用轉(zhuǎn)儲(chǔ)和日志文件可以有效地恢復(fù)數(shù)據(jù)庫。當(dāng)數(shù)據(jù)庫本身被破壞時(shí)(如硬盤故障和病毒破壞)可重裝轉(zhuǎn)儲(chǔ)的后備副本,然后運(yùn)行日志文件,執(zhí)行事務(wù)恢復(fù),這樣就可以重建數(shù)據(jù)庫;當(dāng)數(shù)據(jù)庫本身沒有被破壞,但內(nèi)容已經(jīng)不可靠時(shí)(如發(fā)生事務(wù)故障和系統(tǒng)故障)可利用日志文件恢復(fù)事務(wù),從而使數(shù)據(jù)庫回到某一正確狀態(tài)。這時(shí)不必重裝后備副本。3.5死鎖、活鎖和可串行化死鎖與活鎖某個(gè)事務(wù)永遠(yuǎn)處于等待狀態(tài)稱為活鎖。解決活鎖的最常見方法是對(duì)事務(wù)進(jìn)行排隊(duì),按“先入先出”的原則進(jìn)行調(diào)度。兩個(gè)或兩個(gè)以上的事務(wù)永遠(yuǎn)無法結(jié)束,彼此都在等待對(duì)方解除封鎖,結(jié)果造成事務(wù)永遠(yuǎn)等待,這種封鎖叫死鎖。造成事務(wù)永遠(yuǎn)等待的死鎖過程時(shí)刻事務(wù)1事務(wù)2t1讀取數(shù)據(jù)A(對(duì)A進(jìn)行封鎖)t2讀取數(shù)據(jù)B(對(duì)B進(jìn)行封鎖)t3讀取數(shù)據(jù)B(等待)t4讀取數(shù)據(jù)A(等待)解決死鎖問題的主要方法每個(gè)事務(wù)一次就將所有要使用的數(shù)據(jù)全部加鎖,否則就不能執(zhí)行。預(yù)先規(guī)定一個(gè)封鎖順序,所有的事務(wù)都必須按這個(gè)順序?qū)?shù)據(jù)執(zhí)行封鎖。不預(yù)防死鎖的發(fā)生,而是讓系統(tǒng)用某種方法判斷當(dāng)前系統(tǒng)中是否有死鎖現(xiàn)象。如果發(fā)生死鎖再設(shè)法解除,使事務(wù)再繼續(xù)運(yùn)行可串行化并行事務(wù)執(zhí)行時(shí),系統(tǒng)的調(diào)度是隨機(jī)的,因此,需要一個(gè)尺度去判斷事務(wù)執(zhí)行的正確性。當(dāng)并行操作的結(jié)果與串行操作的結(jié)果相同時(shí),我們就認(rèn)為這個(gè)并行事務(wù)處理結(jié)果是正確的。這個(gè)并行操作調(diào)度稱為可串行化調(diào)度??纱谢遣⑿惺聞?wù)正確性的準(zhǔn)則。這個(gè)準(zhǔn)則規(guī)定,一個(gè)給定的交叉調(diào)度,當(dāng)且僅當(dāng)它是可串行化的,才認(rèn)為是正確的。時(shí)標(biāo)技術(shù)時(shí)標(biāo)技術(shù)是避免因出現(xiàn)數(shù)據(jù)不一致而造成的破壞數(shù)據(jù)庫完整性的另外一種方法。由于它不是采用封鎖的方法,所以,不會(huì)產(chǎn)生死鎖的問題。時(shí)標(biāo)和封鎖技術(shù)之間的基本區(qū)別是:封鎖是使一組事務(wù)的并發(fā)執(zhí)行(即交叉執(zhí)行)同步,使它等價(jià)于這些事務(wù)的某一串行操作;時(shí)標(biāo)法也是使一組事務(wù)的交叉執(zhí)行同步,但是它等價(jià)于這些事務(wù)的一個(gè)特定的串行執(zhí)行,即由時(shí)標(biāo)的時(shí)序所確定的一個(gè)執(zhí)行。如果發(fā)生沖突,則通過撤銷并重新啟動(dòng)一個(gè)事務(wù)解決。如果事務(wù)重新啟動(dòng),則賦予新的時(shí)標(biāo)。攻擊數(shù)據(jù)庫的常用方法突破Script的限制對(duì)SQL口令的突破利用多語句執(zhí)行漏洞SQLServer的安裝漏洞數(shù)據(jù)庫的利用數(shù)據(jù)庫掃描工具

數(shù)據(jù)庫概述

數(shù)據(jù)庫的安全特性數(shù)據(jù)庫的保護(hù)

Oracle數(shù)據(jù)庫的安全性措施

云計(jì)算時(shí)代的數(shù)據(jù)庫安全

數(shù)據(jù)庫安全的發(fā)展趨勢(shì)4Oracle數(shù)據(jù)庫的安全性措施ORACLE的安全措施:用戶標(biāo)識(shí)和鑒定授權(quán)和檢查機(jī)制審計(jì)技術(shù)用戶通過觸發(fā)器靈活定義自己的安全性措施4.1ORACLE的用戶標(biāo)識(shí)和鑒定ORACLE允許用戶重復(fù)標(biāo)識(shí)三次如果三次仍未通過,系統(tǒng)自動(dòng)退出

4.2ORACLE的授權(quán)與檢查機(jī)制ORACLE授權(quán)和檢查機(jī)制的特色ORACLE的權(quán)限包括系統(tǒng)權(quán)限和數(shù)據(jù)庫對(duì)象的權(quán)限采用非集中式的授權(quán)機(jī)制每個(gè)用戶授予與回收自己創(chuàng)建的數(shù)據(jù)庫對(duì)象的權(quán)限D(zhuǎn)BA負(fù)責(zé)授予與回收系統(tǒng)權(quán)限,也可以授予與回收所有數(shù)據(jù)庫對(duì)象的權(quán)限允許重復(fù)授權(quán),即可將某一權(quán)限多次授予同一用戶,系統(tǒng)不會(huì)出錯(cuò)允許無效回收,即用戶不具有某權(quán)限,但回收此權(quán)限的操作仍是成功的。4.3ORACLE的審計(jì)技術(shù)審計(jì)分類用戶級(jí)審計(jì)系統(tǒng)級(jí)審計(jì)用戶級(jí)審計(jì)由用戶設(shè)置用戶針對(duì)自己創(chuàng)建的數(shù)據(jù)庫表或視圖進(jìn)行審計(jì)審計(jì)內(nèi)容所有用戶對(duì)這些表或視圖的一切成功和/或不成功的訪問要求所有用戶對(duì)這些表或視圖的各類SQL操作系統(tǒng)級(jí)審計(jì)DBA設(shè)置審計(jì)對(duì)象和內(nèi)容成功或失敗的登錄要求GRANT和REVOKE操作其他數(shù)據(jù)庫級(jí)權(quán)限下的操作4.4用戶定義的安全性措施用數(shù)據(jù)庫級(jí)觸發(fā)器定義用戶級(jí)安全性例:規(guī)定只能在工作時(shí)間內(nèi)更新Student表可以定義如下觸發(fā)器:CREATEORREPLACE

TRIGGERsecure_studentBEFOREINSERTORUPDATEORDELETEONStudent

BEGINIF(TO_CHAR(sysdate,'DY')IN('SAT','SUN'))OR(TO_NUMBER(sysdate,'HH24')NOTBETWEEN8AND17)THEN

RAISE_APPLICATION_ERROR(-20506,'Youmayonlychangedataduringnormalbusinesshours.')ENDIF;END;

觸發(fā)器存放在數(shù)據(jù)字典中用戶每次對(duì)Student表執(zhí)行INSERT、UPDATE或DELETE自動(dòng)觸發(fā)該觸發(fā)器系統(tǒng)檢查當(dāng)時(shí)的系統(tǒng)時(shí)間,如是周六或周日,或者不是8點(diǎn)至17點(diǎn),系統(tǒng)會(huì)拒絕執(zhí)行用戶的更新操作,并提示出錯(cuò)信息。5云計(jì)算時(shí)代的數(shù)據(jù)庫安全在云計(jì)算時(shí)代,信息的海量規(guī)模及快速增長為傳統(tǒng)的數(shù)據(jù)庫技術(shù)帶來了巨大的沖擊,主要挑戰(zhàn)在于新的數(shù)據(jù)庫應(yīng)具備如下特性:支持快速讀寫、快速響應(yīng)以提升用戶的滿意度支撐PB級(jí)數(shù)據(jù)與百萬級(jí)流量的海量信息處理能力具

溫馨提示

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

評(píng)論

0/150

提交評(píng)論