版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第9章數(shù)據(jù)庫(kù)完整性和安全性9.1引言9.2數(shù)據(jù)庫(kù)的完整性9.3計(jì)算機(jī)系統(tǒng)安全性概述*9.4數(shù)據(jù)庫(kù)的安全性9.1引言數(shù)據(jù)庫(kù)是長(zhǎng)期保存在計(jì)算機(jī)內(nèi)的有組織的可共享數(shù)據(jù)集合在投入運(yùn)行后,一方面需要利用數(shù)據(jù)庫(kù)系統(tǒng)統(tǒng)一管理和共享數(shù)據(jù)另一方面需要提供必要的措施保證其中數(shù)據(jù)的完整性和安全性9.1引言數(shù)據(jù)庫(kù)中發(fā)生數(shù)據(jù)錯(cuò)誤,歸納起來(lái)主要有以下四個(gè)方面的原因:系統(tǒng)發(fā)生軟、硬件故障,數(shù)據(jù)遭到破壞事務(wù)并發(fā)執(zhí)行引起數(shù)據(jù)的不一致性數(shù)據(jù)庫(kù)的更新操作有誤,如輸入本身是錯(cuò)誤的數(shù)據(jù)、不正確的操作或程序產(chǎn)生的不一致數(shù)據(jù)等。自然的或人為的破壞,例如意外事故(失火、失竊等)、惡意的攻擊篡改數(shù)據(jù)等等9.1引言針對(duì)這四種情況,DBMS必須提供以下幾項(xiàng)數(shù)據(jù)控制功能:數(shù)據(jù)庫(kù)恢復(fù):將數(shù)據(jù)庫(kù)從錯(cuò)誤狀態(tài)恢復(fù)到某一已知的一致?tīng)顟B(tài)的功能并發(fā)控制:協(xié)調(diào)并發(fā)事務(wù)的執(zhí)行,并維護(hù)數(shù)據(jù)的一致性保持完整性:數(shù)據(jù)庫(kù)中數(shù)據(jù)始終保證是正確的和一致的保證安全性:防止非法使用數(shù)據(jù)庫(kù),造成數(shù)據(jù)泄露、篡改和破壞9.2數(shù)據(jù)庫(kù)完整性數(shù)據(jù)庫(kù)的完整性是指數(shù)據(jù)的正確性、有效性和相容性數(shù)據(jù)庫(kù)是否具備完整性關(guān)系到數(shù)據(jù)庫(kù)系統(tǒng)能否真實(shí)地反映現(xiàn)實(shí)世界,因此維護(hù)數(shù)據(jù)庫(kù)的完整性是非常重要的為維護(hù)數(shù)據(jù)庫(kù)的完整性,DBMS必須提供一種機(jī)制來(lái)檢查數(shù)據(jù)庫(kù)中的數(shù)據(jù),看其是否滿足語(yǔ)義規(guī)定的條件完整性約束條件完整性檢查是圍繞完整性約束條件進(jìn)行的,因此,完整性約束條件是完整性控制機(jī)制的核心我們將加在數(shù)據(jù)庫(kù)之上的語(yǔ)義約束條件稱為數(shù)據(jù)庫(kù)完整性約束條件,它們作為模式的一部分存入數(shù)據(jù)庫(kù)中而DBMS中檢查數(shù)據(jù)是否滿足完整性條件的機(jī)制稱為完整性檢查完整性約束條件完整性約束條件作用的對(duì)象可以是關(guān)系、元組、列三種其中列約束主要是列的類型、取值范圍、精度、排序等約束條件元組的約束是元組中各個(gè)字段間的聯(lián)系的約束關(guān)系的約束是若干元組間、關(guān)系集合上以及關(guān)系之間的聯(lián)系的約束完整性約束條件完整性約束條件涉及的這三類對(duì)象,其狀態(tài)可以是靜態(tài)的,也可以是動(dòng)態(tài)的所謂靜態(tài)約束是指數(shù)據(jù)庫(kù)每一確定狀態(tài)時(shí)的數(shù)據(jù)對(duì)象所應(yīng)滿足的約束條件,它是反映數(shù)據(jù)庫(kù)狀態(tài)合理性的約束,這是最重要的一類完整性約束動(dòng)態(tài)約束是指數(shù)據(jù)庫(kù)從一種狀態(tài)轉(zhuǎn)變?yōu)榱硪环N狀態(tài)時(shí)新、舊值之間所應(yīng)滿足的約束條件,它是反映數(shù)據(jù)庫(kù)狀態(tài)變遷的約束綜合上述兩個(gè)方面,我們可以將完整性約束條件分為6類完整性約束條件靜態(tài)列級(jí)約束:是對(duì)一個(gè)列的取值域的說(shuō)明,這是最常用也最容易實(shí)現(xiàn)的一類完整性約束,包括以下幾方面:對(duì)數(shù)據(jù)類型的約束,包括數(shù)據(jù)的類型、長(zhǎng)度、單位、精度等;對(duì)數(shù)據(jù)格式的約束;對(duì)取值范圍或取值集合的約束;對(duì)空值(NULL)的約束;其他約束完整性約束條件靜態(tài)元組約束:一個(gè)元組是由若干個(gè)列值組成的,靜態(tài)元組約束就是規(guī)定元組的各個(gè)列之間的約束關(guān)系完整性約束條件靜態(tài)關(guān)系約束:在一個(gè)關(guān)系的各個(gè)元組之間或者若干關(guān)系之間常常存在各種聯(lián)系或約束。常見(jiàn)的靜態(tài)關(guān)系約束有:實(shí)體完整性約束;參照完整性約束;
實(shí)體完整性約束和參照完整性約束是關(guān)系模型的兩個(gè)極其重要的約束,稱為關(guān)系的兩個(gè)不變性。函數(shù)依賴約束。大部分函數(shù)依賴約束都在關(guān)系模式中定義。統(tǒng)計(jì)約束。即字段值與關(guān)系中多個(gè)元組的統(tǒng)計(jì)值之間的約束關(guān)系。完整性約束條件動(dòng)態(tài)列級(jí)約束:是修改列定義或列值時(shí)應(yīng)滿足的約束條件,包括下面兩方面:修改列定義時(shí)的約束
例如,將允許空值的列改為不允許空值時(shí),如果該列目前已存在空值,則拒絕這種修改修改列值時(shí)的約束
修改列值有時(shí)需要參照其舊值,并且新舊值之間需要滿足某種約束條件。例如,職工工資調(diào)整不得低于其原來(lái)工資,學(xué)生年齡只能增長(zhǎng)等等完整性約束條件動(dòng)態(tài)元組約束:動(dòng)態(tài)元組約束是指修改元組的值時(shí)元組中各個(gè)字段間需要滿足某種約束條件。例如職工工資調(diào)整時(shí)新工資不得低于原工資+工齡*1.5,等等。動(dòng)態(tài)關(guān)系約束:動(dòng)態(tài)關(guān)系約束是加在關(guān)系變化前后狀態(tài)上的限制條件,例如事務(wù)一致性、原子性等約束條件完整性控制DBMS的完整性控制機(jī)制應(yīng)具有三個(gè)方面的功能:定義功能,提供定義完整性約束條件的機(jī)制檢查功能,檢查用戶發(fā)出的操作請(qǐng)求是否違背了完整性約束條件如果發(fā)現(xiàn)用戶的操作請(qǐng)求使數(shù)據(jù)違背了完整性約束條件,則采取一定的動(dòng)作來(lái)保證數(shù)據(jù)的完整性
完整性控制完整性約束條件包括有6類,約束條件可能非常簡(jiǎn)單,也可能極為復(fù)雜一個(gè)完善的完整性控制機(jī)制應(yīng)該允許用戶定義所有這六類完整性約束條件完整性控制檢查是否違背完整性約束的時(shí)機(jī)通常是在一條語(yǔ)句執(zhí)行完后立即檢查,我們稱這類約束為立即執(zhí)行約束(Immediateconstraints)有時(shí)完整性檢查需要延遲到整個(gè)事務(wù)執(zhí)行結(jié)束后再進(jìn)行,檢查正確方可提交,我們稱這類約束為延遲執(zhí)行約束(Deferredconstraints)在關(guān)系系統(tǒng)中,最重要的完整性約束是實(shí)體完整性和參照完整性,其他完整性約束條件可以歸入用戶定義的完整性下面詳細(xì)討論實(shí)現(xiàn)參照完整性要考慮的幾個(gè)問(wèn)題完整性控制外碼能否接受空值問(wèn)題在實(shí)現(xiàn)參照完整性時(shí),系統(tǒng)除了應(yīng)該提供定義外碼的機(jī)制,還應(yīng)提供定義外碼列是否允許空值的機(jī)制。在被參照關(guān)系中刪除元組的問(wèn)題一般地,當(dāng)刪除被參照關(guān)系的某個(gè)元組,而參照關(guān)系存在若干元組,其外碼值與被參照關(guān)系刪除元組的主碼值相同,這時(shí)可有三種不同的策略:
(1)級(jí)聯(lián)刪除(CASCADES)
(2)受限刪除(RESTRICTED)僅當(dāng)參照關(guān)系中沒(méi)有任何元組的外碼值與被參照關(guān)系中要?jiǎng)h除元組的主碼值相同時(shí),系統(tǒng)才執(zhí)行刪除操作,否則拒絕此刪除操作。
(3)置空值刪除(NULLIFIES)刪除被參照關(guān)系的元組,并將參照關(guān)系中相應(yīng)元組的外碼值置空值。完整性控制在參照關(guān)系中插入元組時(shí)的問(wèn)題一般地,當(dāng)參照關(guān)系插入某個(gè)元組,而被參照關(guān)系不存在相應(yīng)的元組,其主碼值與參照關(guān)系插入元組的外碼值相同,這時(shí)可有以下策略:
(1)受限插入
(2)遞歸插入完整性控制修改關(guān)系中主碼的問(wèn)題不允許修改主碼允許修改主碼在有些RDBMS中,允許修改關(guān)系主碼,但必須保證主碼的唯一性和非空,否則拒絕修改從上面的討論我們看到DBMS在實(shí)現(xiàn)參照完整性時(shí),除了要提供定義主碼、外碼的機(jī)制外,還需要提供不同的策略供用戶選擇。選擇哪種策略,都要根據(jù)應(yīng)用環(huán)境的要求確定完整性約束的說(shuō)明
完整性約束的說(shuō)明一般分為隱含約束和顯式約束兩類隱含約束的說(shuō)明可用于實(shí)現(xiàn)域完整性約束、實(shí)體完整性約束以及參照完整性約束等,如定義主關(guān)鍵字、外關(guān)鍵字;在設(shè)計(jì)關(guān)系數(shù)據(jù)模式時(shí),還可定義屬性的類型、長(zhǎng)度、單位、精度等完整性約束的說(shuō)明
DBMS根據(jù)這些定義對(duì)數(shù)據(jù)庫(kù)的更新操作自動(dòng)檢查,維護(hù)數(shù)據(jù)的完整性,這是數(shù)據(jù)庫(kù)中最基本、最普遍的約束完整性約束的說(shuō)明
顯式約束的說(shuō)明可實(shí)現(xiàn)一些隱含約束無(wú)法表達(dá)的約束,這些約束依賴于數(shù)據(jù)的語(yǔ)義和應(yīng)用,本身比較復(fù)雜用戶根據(jù)不同DBMS的支持程度,一般選擇使用4種可能的方法完整性約束的說(shuō)明
1.CHECK子句在基表定義中,加入一個(gè)CHECK子句,利用此子句說(shuō)明各列的值應(yīng)滿足的約束條件這種約束是對(duì)單個(gè)關(guān)系的元組值進(jìn)行約束,條件中也可以涉及本關(guān)系的其它元組或其它關(guān)系的元組此時(shí),CHECK子句只對(duì)定義它的關(guān)系起約束作用,對(duì)于條件中提到的其它關(guān)系沒(méi)有約束作用完整性約束的說(shuō)明
2.?dāng)嘌悦總€(gè)斷言就是一個(gè)謂詞,指定了數(shù)據(jù)庫(kù)狀態(tài)必須滿足的邏輯條件利用斷言表達(dá)數(shù)據(jù)庫(kù)完整性約束,形成一系列斷言的集合DBMS對(duì)每個(gè)更新事務(wù),用集合中的斷言對(duì)它進(jìn)行檢查。只有不破壞斷言的更新操作才允許,否則,就撤銷事務(wù)完整性約束的說(shuō)明
2.?dāng)嘌許QL中定義斷言用CREATE語(yǔ)句,形式如下:CREATEASSERTION<斷言名>CHECK<邏輯條件>;這里<邏輯條件>和SQL中查詢語(yǔ)句的查詢條件一樣撤銷斷言用DROP語(yǔ)句,形式如下:DROPASSERTION<斷言名>;完整性約束的說(shuō)明
2.?dāng)嘌岳涸诋a(chǎn)品定單(Order)中,可以通過(guò)下面的斷言限定其銷售價(jià)格(sale_price)不得小于相關(guān)產(chǎn)品報(bào)價(jià)(list_price)的80%:CREATEASSERTIONprice-constraintCHECK(NOTEXISTS(SELECT*FROMOrderOWHEREsale_price<(SELECT0.8*list_price
FROMProductPWHEREO.PNO=P.PNO));完整性約束的說(shuō)明
2.?dāng)嘌詳嘌缘囊霚p少了編程的麻煩,本身也比較容易維護(hù)但是如果斷言較復(fù)雜,則給創(chuàng)建和檢查會(huì)帶來(lái)相當(dāng)大的開(kāi)銷,同時(shí)降低了數(shù)據(jù)庫(kù)更新操作的性能因此,對(duì)于斷言的使用應(yīng)該權(quán)衡考慮完整性約束的說(shuō)明
3.存儲(chǔ)過(guò)程存儲(chǔ)過(guò)程是指將常用的訪問(wèn)數(shù)據(jù)庫(kù)的程序,作為一個(gè)過(guò)程進(jìn)行編譯,然后存儲(chǔ)在數(shù)據(jù)庫(kù)中,供用戶調(diào)用這樣做既改善性能,又方便用戶,還擴(kuò)充了功能將存儲(chǔ)過(guò)程應(yīng)用到完整性約束,就是在應(yīng)用程序中插入一些存儲(chǔ)過(guò)程說(shuō)明完整性約束,在更新數(shù)據(jù)庫(kù)時(shí)執(zhí)行,完成數(shù)據(jù)庫(kù)完整性的檢查如果違反給定的約束,則撤銷事務(wù),或者修改數(shù)據(jù)使數(shù)據(jù)庫(kù)保持完整性
完整性約束的說(shuō)明
4.觸發(fā)器觸發(fā)器是一條在對(duì)數(shù)據(jù)庫(kù)執(zhí)行更新操作時(shí)系統(tǒng)自動(dòng)執(zhí)行的語(yǔ)句,又稱主動(dòng)規(guī)則或ECA(事件-條件-動(dòng)作)規(guī)則即當(dāng)發(fā)生某一事件時(shí),如果滿足給定的條件,則執(zhí)行相應(yīng)的動(dòng)作利用觸發(fā)器可以表示約束,以某種更新數(shù)據(jù)庫(kù)的操作作為事件,以違反約束作為條件,以違反約束的處理作為動(dòng)作
完整性約束的說(shuō)明
4.觸發(fā)器在插入、刪除、修改等更新操作發(fā)生時(shí),觸發(fā)器開(kāi)始工作先檢查完整性約束條件是否滿足,如果不滿足就執(zhí)行相應(yīng)的動(dòng)作動(dòng)作可以有很多形式,如撤銷事務(wù),或傳遞一個(gè)消息給用戶,或完成某些對(duì)數(shù)據(jù)庫(kù)的操作,以保持?jǐn)?shù)據(jù)庫(kù)的完整性觸發(fā)器的用途不止這一點(diǎn),它還可以用在監(jiān)視數(shù)據(jù)庫(kù)的狀態(tài)等完整性約束的說(shuō)明
觸發(fā)器例:在產(chǎn)品定單(Order)中,也可以通過(guò)下面的觸發(fā)器限定其銷售價(jià)格(sale_price)不得小于相關(guān)產(chǎn)品報(bào)價(jià)(list_price)的80%:CREATETRIGGERprice-constraintBEFOREINSERTONOrderREFERENCINGNEWASNFOREACHROWWHEN(N.sale_price<(SELECT0.8*list_price
FROMProductPWHEREN.PNO=P.PNO){Output(“jkkikkk”);ROLLBACK;}完整性約束的說(shuō)明
4.觸發(fā)器例:在產(chǎn)品定單(Order)中,也可以通過(guò)下面的觸發(fā)器限定其銷售價(jià)格(sale_price)不得小于相關(guān)產(chǎn)品報(bào)價(jià)(list_price)的80%:CREATETRIGGERprice-constraintBEFOREUPDATEONOrderFORsale_priceREFERENCINGNEWASNFOREACHROWWHEN(N.sale_price<(SELECT0.8*list_price
FROMProductPWHEREN.PNO=P.PNO){Output(“jkkikkk”);ROLLBACK;}9.3數(shù)據(jù)庫(kù)系統(tǒng)安全性計(jì)算機(jī)系統(tǒng)安全性概述用戶標(biāo)識(shí)和鑒別數(shù)據(jù)庫(kù)系統(tǒng)的存取控制機(jī)制自主存取控制強(qiáng)制存取控制視圖機(jī)制數(shù)據(jù)加密計(jì)算機(jī)系統(tǒng)安全性概述計(jì)算機(jī)系統(tǒng)安全性是指為保護(hù)計(jì)算機(jī)系統(tǒng)中的硬件、軟件及數(shù)據(jù),防止其因偶然或惡意的原因遭到破壞、篡改或泄露等,而采取的措施;計(jì)算機(jī)安全不僅涉及到計(jì)算機(jī)系統(tǒng)本身的技術(shù)問(wèn)題,還涉及管理學(xué)、法學(xué)、犯罪學(xué)、心理學(xué)的問(wèn)題等方面其內(nèi)容包括計(jì)算機(jī)安全理論與策略;計(jì)算機(jī)安全技術(shù)、安全管理、安全評(píng)價(jià)、安全產(chǎn)品以及計(jì)算機(jī)犯罪與偵察、計(jì)算機(jī)安全法律、安全監(jiān)察等等概括起來(lái),計(jì)算機(jī)系統(tǒng)的安全性問(wèn)題可分為三大類,即:技術(shù)安全類、管理安全類和政策法律類計(jì)算機(jī)系統(tǒng)安全性概述技術(shù)安全性指計(jì)算機(jī)系統(tǒng)中采用具有一定安全性的硬件、軟件來(lái)實(shí)現(xiàn)對(duì)計(jì)算機(jī)系統(tǒng)及其所存數(shù)據(jù)的安全保護(hù)當(dāng)計(jì)算機(jī)系統(tǒng)受到無(wú)意或惡意的攻擊時(shí)仍能保證系統(tǒng)正常運(yùn)行,保證系統(tǒng)內(nèi)的數(shù)據(jù)不增加、不丟失、不泄露管理安全性技術(shù)安全之外的,諸如軟硬件意外故障、場(chǎng)地的意外事故、管理不善導(dǎo)致的計(jì)算機(jī)設(shè)備和數(shù)據(jù)介質(zhì)的物理破壞、丟失等安全問(wèn)題,視為管理安全政策法規(guī)則指政府部門建立的有關(guān)計(jì)算機(jī)犯罪、數(shù)據(jù)安全保密的法律道德準(zhǔn)則和政策法規(guī)、法令等本課程只討論技術(shù)安全類計(jì)算機(jī)系統(tǒng)安全性概述在一般計(jì)算機(jī)系統(tǒng)中,安全措施是一級(jí)一級(jí)層層設(shè)置的因此可以有如下的模型:用戶標(biāo)識(shí)和鑒別用戶標(biāo)識(shí)和鑒別是系統(tǒng)提供的最外層安全保護(hù)措施其方法是由系統(tǒng)提供一定的方式讓用戶標(biāo)識(shí)自己的名字或身份每次用戶要求進(jìn)入系統(tǒng)時(shí),由系統(tǒng)進(jìn)行核對(duì),通過(guò)鑒定后才提供機(jī)器使用權(quán)例如,使用用戶名和口令數(shù)據(jù)庫(kù)系統(tǒng)的存取控制機(jī)制數(shù)據(jù)庫(kù)安全性所關(guān)心的主要是DBMS的存取控制機(jī)制數(shù)據(jù)庫(kù)安全最重要的一點(diǎn)就是確保只授權(quán)給有資格的用戶訪問(wèn)數(shù)據(jù)庫(kù)的權(quán)限,同時(shí)保證所有未被授權(quán)的人員無(wú)法接近數(shù)據(jù),這主要通過(guò)數(shù)據(jù)庫(kù)系統(tǒng)的存取控制機(jī)制實(shí)現(xiàn)數(shù)據(jù)庫(kù)系統(tǒng)的存取控制機(jī)制存取控制機(jī)制主要包括兩部分:定義用戶權(quán)限,并將用戶權(quán)限登記到數(shù)據(jù)字典中合法權(quán)限檢查,每當(dāng)用戶發(fā)出存取數(shù)據(jù)庫(kù)的操作請(qǐng)求后(請(qǐng)求一般應(yīng)包括操作類型、操作對(duì)象和操作用戶等信息),DBMS查找數(shù)據(jù)字典,根據(jù)安全規(guī)則進(jìn)行合法權(quán)限檢查,若用戶的操作請(qǐng)求超出了定義的權(quán)限,系統(tǒng)將拒絕執(zhí)行此操作用戶權(quán)限定義和合法權(quán)檢查機(jī)制一起組成了DBMS的安全子系統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)的存取控制機(jī)制當(dāng)前大型的DBMS一般都支持自主存取控制(DAC)有些DBMS同時(shí)還支持強(qiáng)制存取控制(MAC)在強(qiáng)制存取控制中,每一個(gè)數(shù)據(jù)對(duì)象被標(biāo)以一定的“密級(jí)”,每一個(gè)用戶也被授予某一個(gè)級(jí)別的“許可證”對(duì)于任意一個(gè)對(duì)象,只有具有合法許可證的用戶才可以存取因此,強(qiáng)制存取控制相對(duì)自主存取控制更加嚴(yán)格自主存取控制大型數(shù)據(jù)庫(kù)管理系統(tǒng)幾乎都支持自主存取控制,目前的SQL標(biāo)準(zhǔn)也對(duì)自主存取控制提供支持,這主要通過(guò)SQL的GRANT語(yǔ)句和REVOKE語(yǔ)句來(lái)實(shí)現(xiàn)用戶權(quán)限是由兩個(gè)要素組成的:數(shù)據(jù)對(duì)象和操作類型定義一個(gè)用戶的存取權(quán)限就是要定義這個(gè)用戶可以在哪些數(shù)據(jù)對(duì)象上進(jìn)行哪些類型的操作自主存取控制在數(shù)據(jù)庫(kù)系統(tǒng)中,定義存取權(quán)限稱為授權(quán)(Authorization)用戶權(quán)限定義中數(shù)據(jù)對(duì)象范圍越小授權(quán)子系統(tǒng)就越靈活。例如,上面的授權(quán)定義可精細(xì)到字段級(jí),而有的系統(tǒng)只能對(duì)關(guān)系授權(quán)。授權(quán)粒度越細(xì),授權(quán)子系統(tǒng)就越靈活,但系統(tǒng)定義與檢查權(quán)限的開(kāi)銷也會(huì)相應(yīng)地增大自主存取控制衡量授權(quán)子系統(tǒng)精巧程度的另一個(gè)尺度是能否提供與數(shù)據(jù)值有關(guān)的授權(quán)如上面的授權(quán)定義是獨(dú)立于數(shù)據(jù)值的,即用戶能否對(duì)某類數(shù)據(jù)對(duì)象執(zhí)行的操作與數(shù)據(jù)值無(wú)關(guān),完全由數(shù)據(jù)名決定反之,若授權(quán)依賴于數(shù)據(jù)對(duì)象的內(nèi)容,則稱為是與數(shù)據(jù)值有關(guān)的授權(quán)。自主存取控制另外,還可以在存取謂詞中引用系統(tǒng)變量,如終端設(shè)備號(hào),系統(tǒng)時(shí)鐘等,這就是與時(shí)間地點(diǎn)有關(guān)的存取權(quán)限,這樣用戶只能在某段時(shí)間內(nèi),某臺(tái)終端上存取有關(guān)數(shù)據(jù)自主存取控制能夠通過(guò)授權(quán)機(jī)制有效地控制其他用戶對(duì)敏感數(shù)據(jù)的存取但是由于用戶對(duì)數(shù)據(jù)的存取權(quán)限是“自主”的,用戶可以自由地決定將數(shù)據(jù)的存取權(quán)限授予何人、決定是否也將“授權(quán)”的權(quán)限授予別人在這種授權(quán)機(jī)制下,仍可能存在數(shù)據(jù)的“無(wú)意泄露”強(qiáng)制存取控制(11/5軟)所謂強(qiáng)制存取控制是指系統(tǒng)為保證更高程度的安全性,按照TDI/TCSEC標(biāo)準(zhǔn)中安全策略的要求,所采取的強(qiáng)制存取檢查手段強(qiáng)制存取控制不是用戶能直接感知或進(jìn)行控制的強(qiáng)制存取控制適用于那些對(duì)數(shù)據(jù)有嚴(yán)格而固定密級(jí)分類的部門,例如軍事部門或政府部門在強(qiáng)制存取控制中,DBMS所管理的全部實(shí)體被分為主體和客體兩大類強(qiáng)制存取控制主體是系統(tǒng)中的活動(dòng)實(shí)體,既包括DBMS所管理的實(shí)際用戶,也包括代表用戶的各進(jìn)程客體是系統(tǒng)中的被動(dòng)實(shí)體,是受主體操縱的,包括文件、基表、索引、視圖等等對(duì)于主體和客體,DBMS為它們每個(gè)實(shí)例(值)指派一個(gè)敏感度標(biāo)記(Label)強(qiáng)制存取控制敏感度標(biāo)記被分成若干級(jí)別,例如絕密(TopSecret)、機(jī)密(Secret)、可信(Confidential)、公開(kāi)(Public)等主體的敏感度標(biāo)記稱為許可證級(jí)別(ClearanceLevel),客體的敏感度標(biāo)記稱為密級(jí)(ClassificationLevel)MAC機(jī)制就是通過(guò)對(duì)比主體的Label和客體的Label,最終確定主體是否能夠存取客體強(qiáng)制存取控制當(dāng)某一用戶(或一主體)以標(biāo)記label注冊(cè)入系統(tǒng)時(shí),系統(tǒng)要求他對(duì)任何客體的存取必須遵循如下規(guī)則:
僅當(dāng)主體的許可證級(jí)別大于或等于客體的密級(jí)時(shí),該主體才能讀取相應(yīng)的客體僅當(dāng)主體的許可證級(jí)別等于客體的密級(jí)時(shí),該主體才能寫相應(yīng)的客體強(qiáng)制存取控制規(guī)則(1)的意義是明顯的而規(guī)則(2)需要解釋一下在某些系統(tǒng)中,第(2)條規(guī)則與這里的規(guī)則有些差別。這些系統(tǒng)規(guī)定:僅當(dāng)主體的許可證級(jí)別小于或等于客體的密級(jí)時(shí),該主體才能寫相應(yīng)的客體,即用戶可以為寫入的數(shù)據(jù)對(duì)象賦予高于自己的許可證級(jí)別的密級(jí)這樣一旦數(shù)據(jù)被寫入,該用戶自己也不能再讀該數(shù)據(jù)對(duì)象了這兩種規(guī)則的共同點(diǎn)在于它們均禁止了擁有高許可證級(jí)別的主體更新低密級(jí)的數(shù)據(jù)對(duì)象,從而防止了敏感數(shù)據(jù)的泄漏強(qiáng)制存取控制強(qiáng)制存取控制(MAC)是對(duì)數(shù)據(jù)本身進(jìn)行密級(jí)標(biāo)記,無(wú)論數(shù)據(jù)如何復(fù)制,標(biāo)記與數(shù)據(jù)是一個(gè)不可分的整體,只有符合密級(jí)標(biāo)記要求的用戶才可以操縱數(shù)據(jù),從而提供了更高級(jí)別的安全性較高安全性級(jí)別提供的安全保護(hù)要包含較低級(jí)別的所有保護(hù),因此在實(shí)現(xiàn)MAC時(shí)要首先實(shí)現(xiàn)DAC,即DAC與MAC共同構(gòu)成DBMS的安全機(jī)制系統(tǒng)首先進(jìn)行DAC檢查,對(duì)通過(guò)DAC檢查的允許存取的數(shù)據(jù)對(duì)象再由系統(tǒng)自動(dòng)進(jìn)行MAC檢查,只有通過(guò)MAC檢查的數(shù)據(jù)對(duì)象方可存取視圖機(jī)制進(jìn)行存取權(quán)限控制時(shí)我們可以為不同的用戶定義不同的視圖,把數(shù)據(jù)對(duì)象限制在一定的范
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版礦山開(kāi)采廢棄物資源化利用合作協(xié)議3篇
- 2025年石英玻璃纖維繩合作協(xié)議書
- 2025年B119型一氧化碳高溫變換催化劑項(xiàng)目發(fā)展計(jì)劃
- 2025勞動(dòng)合同書(定稿)費(fèi)
- 2025民間借貸個(gè)人借款合同范本「」
- 2025的廣告公司的勞動(dòng)合同范本
- 2024年美發(fā)店合伙人權(quán)益分配合同
- 2024年聚苯板產(chǎn)品供需合同
- 2025年度辦公樓能源消耗監(jiān)測(cè)與分析合同3篇
- 2024年物業(yè)清潔服務(wù)承包協(xié)議3篇
- 自控原理課件1(英文版)
- GB/T 14048.14-2006低壓開(kāi)關(guān)設(shè)備和控制設(shè)備第5-5部分:控制電路電器和開(kāi)關(guān)元件具有機(jī)械鎖閂功能的電氣緊急制動(dòng)裝置
- T-JSTJXH 15-2022 裝配式勁性柱-鋼梁框架結(jié)構(gòu)設(shè)計(jì)規(guī)程
- 2023年上海市市高考物理一模試卷含解析
- 市政工程人行道維修方案
- 西方政治制度史ppt-西方政治制度史Historyof課件
- 初中英語(yǔ)期末考試方法與技巧課件
- 馬克思恩格斯傳略課件
- 油煙管道清洗服務(wù)承諾書
- 卷積神經(jīng)網(wǎng)絡(luò)講義課件
- 安全注射培訓(xùn)考核試題及答案
評(píng)論
0/150
提交評(píng)論