數(shù)據(jù)庫安全性習(xí)題解答和解析7頁_第1頁
數(shù)據(jù)庫安全性習(xí)題解答和解析7頁_第2頁
數(shù)據(jù)庫安全性習(xí)題解答和解析7頁_第3頁
數(shù)據(jù)庫安全性習(xí)題解答和解析7頁_第4頁
數(shù)據(jù)庫安全性習(xí)題解答和解析7頁_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第九章 數(shù)據(jù)庫安全性習(xí)題解答和解析1. 1.     什么是數(shù)據(jù)庫的安全性?答:數(shù)據(jù)庫的安全性是指保護數(shù)據(jù)庫以防止不合法的使用所造成的數(shù)據(jù)泄露、更改或破壞。 2. 2.     數(shù)據(jù)庫安全性和計算機系統(tǒng)的安全性有什么關(guān)系?答:安全性問題不是數(shù)據(jù)庫系統(tǒng)所獨有的,所有計算機系統(tǒng)都有這個問題。只是在數(shù)據(jù)庫系統(tǒng)中大量數(shù)據(jù)集中存放,而且為許多最終用戶直接共享,從而使安全性問題更為突出。系統(tǒng)安全保護措施是否有效是數(shù)據(jù)庫系統(tǒng)的主要指標(biāo)之一。數(shù)據(jù)庫的安全性和計算機系統(tǒng)的安全性,包括操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)的安全性是緊密聯(lián)系、相

2、互支持的。 3.試述可信計算機系統(tǒng)評測標(biāo)準(zhǔn)的情況,試述TDI/TCSEC標(biāo)準(zhǔn)的基本內(nèi)容。答:各個國家在計算機安全技術(shù)方面都建立了一套可信標(biāo)準(zhǔn)。目前各國引用或制定的一系列安全標(biāo)準(zhǔn)中,最重要的是美國國防部(DoD)正式頒布的DoD可信 計算機系統(tǒng)評估標(biāo)準(zhǔn)(Trusted Computer System Evaluation Criteria,簡稱 TCSEC,又稱桔皮書)。(詳細(xì)介紹參見概論9.1.2)。TDI/TCSEC標(biāo)準(zhǔn)是將TCSEC擴展到數(shù)據(jù)庫管理系統(tǒng),即可信計算機系統(tǒng)評估標(biāo)準(zhǔn)關(guān)于可信數(shù)據(jù)庫系統(tǒng)的解釋(Trusted Database Interpretation 簡稱TDI,

3、又稱紫皮書)。在TDI中定義了數(shù)據(jù)庫管理系統(tǒng)的設(shè)計與實現(xiàn)中需滿足和用以進(jìn)行安全性級別評估的標(biāo)準(zhǔn)。TDI與TCSEC一樣,從安全策略、責(zé)任、保證和文檔四個方面來描述安全性級別劃分的指標(biāo)。每個方面又細(xì)分為若干項。這些指標(biāo)的具體內(nèi)容,參見概論9.1.2。 4.試述TCSEC(TDI)將系統(tǒng)安全級別劃分為4組7個等級的基本內(nèi)容。答:根據(jù)計算機系統(tǒng)對安全性各項指標(biāo)的支持情況,TCSEC(TDI)將系統(tǒng)劃分為四組(division)7個等級,依次是D、C(C1,C2)、B(B1,B2,B3)、A(A1),按系統(tǒng)可靠或可信程度逐漸增高。 安全級別 定義A1 驗證設(shè)計 (Verified

4、Design)B3 安全域 (Security Domains)B2 結(jié)構(gòu)化保護 (Structural protection)B1 標(biāo)記安全保護 (labeled Security protection)C2 受控的存取保護 (Controlled Access protection)C1 自主安全保護 (Discretionary Security protection)D 最小保護 (Minimal protection) 這些安全級別之間具有一種偏序向下兼容的關(guān)系,即較高安全性級別提供的安全保護包含較低級別的所有保護要求,同時提供更多或更完善的保護能力。各個等級的基本內(nèi)容為:

5、D級 D級是最低級別。一切不符合更高標(biāo)準(zhǔn)的系統(tǒng),統(tǒng)統(tǒng)歸于D組。C1級 只提供了非常初級的自主安全保護。能夠?qū)崿F(xiàn)對用戶和數(shù)據(jù)的分離,進(jìn)行自主存取控制(DAC),保護或限制用戶權(quán)限的傳播。C2級 實際是安全產(chǎn)品的最低檔次,提供受控的存取保護,即將C1級的DAC進(jìn)一步細(xì)化,以個人身份注冊負(fù)責(zé),并實施審計和資源隔離。Bl級 標(biāo)記安全保護。對系統(tǒng)的數(shù)據(jù)加以標(biāo)記,并對標(biāo)記的主體和客體實施強制存取控制(MAC)以及審計等安全機制。B2級 結(jié)構(gòu)化保護。建立形式化的安全策略模型并對系統(tǒng)內(nèi)的所有主體和客體實施DAC和MAC。B3級 安全域。該級的TCB(可信計算機庫)必須滿足訪問監(jiān)控器的要求,審計跟蹤能力更強,并

6、提供系統(tǒng)恢復(fù)過程。A1級 驗證設(shè)計,即提供B3級保護的同時給出系統(tǒng)的形式化設(shè)計說明和驗證以確信各安全保護真正實現(xiàn)。各個等級的基本內(nèi)容請參見概論9.1.2。特別是概論上表9.2列出了 各安全等級對安全指標(biāo)的支持情況。希望讀者掌握概論上的內(nèi)容,這里就不重復(fù)了。 5.試述實現(xiàn)數(shù)據(jù)庫安全性控制的常用方法和技術(shù)。答:實現(xiàn)數(shù)據(jù)庫安全性控制的常用方法和技術(shù)有:(1)用戶標(biāo)識和鑒別:該方法由系統(tǒng)提供一定的方式讓用戶標(biāo)識自己的名字或身份。每次用戶要求進(jìn)入系統(tǒng)時,由系統(tǒng)進(jìn)行核對,通過鑒定后才提供系統(tǒng)的使用權(quán)。(2)存取控制:通過用戶權(quán)限定義和合法權(quán)檢查確保只有合法權(quán)限的用戶訪問數(shù)據(jù)庫,所有未被授權(quán)的人員

7、無法存取數(shù)據(jù)。例如 C2 級中的自主存取控制(DAC),B1級中的強制存取控制(MAC)。(3)視圖機制:為不同的用戶定義視圖,通過視圖機制把要保密的數(shù)據(jù)對無權(quán)存取的用戶隱藏起來,從而自動地對數(shù)據(jù)提供一定程度的安全保護。(4)審計:建立審計日志,把用戶對數(shù)據(jù)庫的所有操作自動記錄下來放入審 計日志中,DBA可以利用審計跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件, 找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。(5)數(shù)據(jù)加密:對存儲和傳輸?shù)臄?shù)據(jù)進(jìn)行加密處理,從而使得不知道解密算法的人無法獲知數(shù)據(jù)的內(nèi)容。具體內(nèi)容請參見概論 9.2。 6.什么是數(shù)據(jù)庫中的自主存取控制方法和強制存取控制方法?答:自

8、主存取控制方法:定義各個用戶對不同數(shù)據(jù)對象的存取權(quán)限。當(dāng)用戶對數(shù)據(jù)庫訪問時首先檢查用戶的存取權(quán)限。防止不合法用戶對數(shù)據(jù)庫的存取。強制存取控制方法:每一個數(shù)據(jù)對象被(強制地)標(biāo)以一定的密級,每一個用 戶也被(強制地)授予某一個級別的許可證。系統(tǒng)規(guī)定只有具有某一許可證級別 的用戶才能存取某一個密級的數(shù)據(jù)對象。解析:自主存取控制中自主的含義是:用戶可以將自己擁有的存取權(quán)限"自主"地授予別人。即用戶具有一定的"自主"權(quán)。 7.SQL語言中提供了哪些數(shù)據(jù)控制(自主存取控制)的語句?請試舉幾例說明它們的使用方法。答:SQL中的自主存取控制是通過GRANT語

9、句和REVOKE語句來實現(xiàn)的。如:GRANT SELECT,INSERT ON StudentTO 王平WITH GRANT OPTION;就將Student表的SELECT和INSERT權(quán)限授予了用戶王平,后面的"WITH GRANT OPTION"子句表示用戶王平同時也獲得了"授權(quán)"的權(quán)限,即可以把得到的權(quán)限繼續(xù)授予其他用戶。REVOKE INSERT ON Student FROM 王平 CASCADE;就將Student表的INSERT 權(quán)限從用戶王平處收回,選項CASCADE表示,如果用戶王平將Student的INSERT權(quán)限又轉(zhuǎn)授給了其他用戶

10、,那么這些權(quán)限也將從其他用戶處收回。 8.今有兩個關(guān)系模式:職工(職工號,姓名,年齡,職務(wù),工資,部門號)部門(部門號,名稱,經(jīng)理名,地址,電話號)請用SQL的GRANT和REVOKE語句(加上視圖機制)完成以下授權(quán)定義或存取控制功能:(1)用戶王明對兩個表有SELECT權(quán)力。GRANT SELECT ON 職工,部門TO 王明;(2)用戶李勇對兩個表有INSERT和DELETE權(quán)力。GRANT INSERT,DELETE ON 職工,部門TO 李勇;(3)*每個職工只對自己的記錄有SELECT權(quán)力。GRANT SELECT ON 職工 WHEN USER()=NAMETO ALL;

11、這里假定系統(tǒng)的GRANT語句支持WHEN子句和USER()的使用。用戶將自己的名字作為ID。注意,不同的系統(tǒng)這些擴展語句可能是不同的。讀者應(yīng)該了解你使用的DBMS產(chǎn)品的擴展語句。(4)用戶劉星對職工表有SELECT權(quán)力,對工資字段具有更新權(quán)力。GRANT SELECT,UPDATE(工資) ON 職工TO 劉星;(5)用戶張新具有修改這兩個表的結(jié)構(gòu)的權(quán)力。GRANT ALTER TABLE ON 職工,部門TO 張新;(6)用戶周平具有對兩個表所有權(quán)力(讀,插,改,刪數(shù)據(jù)),并具有給其他用戶授權(quán)的權(quán)力。GRANT AIL PRIVILIGES ON 職工,部門TO 周平WITH GRANT O

12、PTION;(7)用戶楊蘭具有從每個部門職工中SELECT最高工資、最低工資、平均工資的權(quán)力,他不能查看每個人的工資。首先建立一個視圖。然后對這個視圖定義楊蘭的存取權(quán)限。 CREATE VIEW 部門工資 ASSELECT 部門.名稱,MAX(工資),MIN(工資),AVG(工資)FROM 職工,部門WHERE 職工.部門號=部門.部門號GROUP BY 職工.部門號; GRANT SELECT ON 部門工資TO 楊蘭; 9.把習(xí)題8中(1)-(7)的每一種情況,撤銷各用戶所授予的權(quán)力。答:(1) REVOKE SELECT ON 職工,部門 FROM 王明;(2) RE

13、VOKE INSERT,DEIEIE ON 職工,部門 FROM 李勇;(3) REOVKE SELECT ON 職工 WHEN USER()=NAMEFROM AIL;這里假定用戶將自己的名字作為ID,且系統(tǒng)的REOVKE語句支持WHEN子句,系統(tǒng)也支持USER()的使用。(4) REVOKE SELECT,UPDATE ON 職工 FROM 劉星;(5) REVOKE ALTER TABIE ON 職工,部門FROM 張新;(6) REVOKE AIL PRIVILIGES ON 職工,部門 FROM 周平;(7) REVOKE SELECT ON 部門工資FROM 楊蘭;DROP VIE

14、W 部門工資; 10.為什么強制存取控制提供了更高級別的數(shù)據(jù)庫安全性?答:強制存取控制(MAC)是對數(shù)據(jù)本身進(jìn)行密級標(biāo)記,無論數(shù)據(jù)如何復(fù)制,標(biāo)記與數(shù)據(jù)是一個不可分的整體,只有符合密級標(biāo)記要求的用戶才可以操縱數(shù)據(jù),從而提供了更高級別的安全性。 11.理解并解釋MAC機制中主體、客體、敏感度標(biāo)記的含義。答:主體是系統(tǒng)中的活動實體,既包括DBMS所管理的實際用戶,也包括代表用戶的各進(jìn)程??腕w是系統(tǒng)中的被動實體,是受主體操縱的,包括文件、基表、索引、視圖等。對于主體和客體,DBMS為它們每個實例(值)指派一個敏感度標(biāo)記(Label)。敏感度標(biāo)記被分成若干級別,例如絕密(Top Se

15、cret)、機密(Secret)、可信(Confidential)、公開(Public) 等。主體的敏感度標(biāo)記稱為許可證級別 (ClearanceLevel),客體的敏感度標(biāo)記稱為密級(Classification kvel)。 12.舉例說明MAC機制如何確定主體能否存取客體。答:假設(shè)要對關(guān)系變量S進(jìn)行MAC控制,為簡化起見,假設(shè)要控制存取的數(shù)據(jù)單元是元組,則每個元組標(biāo)以密級,如下表所示:(4=絕密,3=機密,2=秘密) S#SNAMESTATUSCITYCLASSS1Smith20London2S2Jones10paris3S3Clark20london4 

16、假設(shè)用戶U1和U2的許可證級別分別為3和2,則根據(jù)規(guī)則U1能查得元組S1和S2, 可修改元組S2;而U2只能查得元組S1,只能修改元組S1。解析:這里假設(shè)系統(tǒng)的存取規(guī)則是:(1)僅當(dāng)主體的許可證級別大于或等于客體的密級時才能讀取相應(yīng)的客體;(2)僅當(dāng)主體的許可證級別等于客體的密級時才能寫相應(yīng)的客體。 13.什么是數(shù)據(jù)庫的審計功能,為什么要提供審計功能?答:審計功能是指DBMS的審計模塊在用戶對數(shù)據(jù)庫執(zhí)行操作的同時把所有操作自動記錄到系統(tǒng)的審計日志中。因為任何系統(tǒng)的安全保護措施都不是完美無缺的,蓄意盜竊破壞數(shù)據(jù)的人總可能存在。利用數(shù)據(jù)庫的審計功能,DBA可以根據(jù)審計跟蹤的信息,重現(xiàn)導(dǎo)致

17、數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。 14.統(tǒng)計數(shù)據(jù)庫中存在何種特殊的安全性問題?答:統(tǒng)計數(shù)據(jù)庫允許用戶查詢聚集類型的信息,如合計、平均值、最大值、最小值等,不允許查詢單個記錄信息。但是,人們可以從合法的查詢中推導(dǎo)出不合法的信息,即可能存在隱蔽的信息通道,這是統(tǒng)計數(shù)據(jù)庫要研究和解決的特殊的安全性問題。 *15.試述你了解的某一個實際的DBMS產(chǎn)品的安全性措施。答:不同的DBMS產(chǎn)品以及同一產(chǎn)品的不同版本的安全措施各不相同,仁者見仁,智者見智,請讀者自己了解。概論上9.4簡單介紹了有關(guān)Oracle 數(shù)據(jù)庫的 安全性措施。 第十章 數(shù)據(jù)庫完

18、整性習(xí)題解答和解析1.什么是數(shù)據(jù)庫的完整性?答:數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。2.數(shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的安全性概念有什么區(qū)別和聯(lián)系?答:數(shù)據(jù)的完整性和安全性是兩個不同的概念,但是有一定的聯(lián)系。前者是為了防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),防止錯誤信息的輸入和輸出,即所謂垃圾進(jìn)垃圾出(Garbage In Garbage Out)所造成的無效操作和錯誤結(jié)果。后者是保護數(shù)據(jù)庫防止惡意的破壞和非法的存取。也就是說,安全性措施的防范對象是非法用戶和非法操作,完整性措施的防范對象是不合語義的數(shù)據(jù)。3.什么是數(shù)據(jù)庫的完整性約束條件?可分為哪幾類?答:完整性約束條件是指數(shù)據(jù)庫中的數(shù)據(jù)應(yīng)該滿足的

19、語義約束條件。一般可以分為六類:靜態(tài)列級約束、靜態(tài)元組約束、靜態(tài)關(guān)系約束、動態(tài)列級約束、動態(tài)元組約束、動態(tài)關(guān)系約束。靜態(tài)列級約束是對一個列的取值域的說明,包括以下幾個方面:(1)對數(shù)據(jù)類型的約束,包括數(shù)據(jù)的類型、長度、單位可精度等;(2)對數(shù)據(jù)格式的約束;(3)對取值范圍或取值集合的約束;(4)對空值的約束;(5)其他約束。 靜態(tài)元組約束就是規(guī)定組成一個元組的各個列之間的約束關(guān)系,靜態(tài)元組約束只局限在單個元組上。靜態(tài)關(guān)系約束是在一個關(guān)系的各個元組之間或者若干關(guān)系之間常常存在各種聯(lián)系或約束。常見的靜態(tài)關(guān)系約束有:(1)實體完整性約束;(2)參照完整性約束;(3)函數(shù)依賴約束。動態(tài)列級約束是修改列

20、定義或列值時應(yīng)滿足的約束條件,包括下面兩方面:(1)修改列定義時的約束;(2)修改列值時的約束。動態(tài)元組約束是指修改某個元組的值時需要參照其舊值,并且新舊值之間 需要滿足某種約束條件。動態(tài)關(guān)系約束是加在關(guān)系變化前后狀態(tài)上的限制條件,例如事務(wù)一致性、原子性等約束條件。詳細(xì)內(nèi)容可以參見概論10.1中的介紹。4.DBMS的完整性控制機制應(yīng)具有哪些功能?答:DBMS的完整性控制機制應(yīng)具有三個方面的功能:(1)定義功能,即提供定義完整性約束條件的機制;(2)檢查功能,即檢查用戶發(fā)出的操作請求是否違背了完整性約束條件;(3)違約反應(yīng),如果發(fā)現(xiàn)用戶的操作請求使數(shù)據(jù)違背了完整性約束條件,則采取一定的動作來保證

21、數(shù)據(jù)的完整性。5.RDBMS在實現(xiàn)參照完整性時需要考慮哪些方面?答:RDBMS在實現(xiàn)參照完整性時需要考慮以下幾個方面:(1)外碼是否可以接受空值。(2)刪除被參照關(guān)系的元組時的考慮,這時系統(tǒng)可能采取的作法有三種:1)級聯(lián)刪除(CASCADES)2)受限刪除(RESTRICTED);3)置空值刪除(NULLIFIES)。(3)在參照關(guān)系中插入元組時的問題,這時系統(tǒng)可能采取的作法有:1)受限插入;2)遞歸插入。(4)修改關(guān)系中主碼的問題。一般是不能用UPDATE語句修改關(guān)系主碼的。如果需要修改主碼值,只能先刪除該元組,然后再把具有新主碼值的元組插入到關(guān)系中。如果允許修改主碼,首先要保證主碼的惟一性和非空,否則拒絕修改。然后要區(qū)分是參照關(guān)系還是被參照關(guān)系。詳細(xì)討論可以參見概論10.2。6.假設(shè)有下面兩個關(guān)系模式:職工(職工號,姓名,年齡,職務(wù),工資,部門號),其中職工號為主碼;部門(部門號,名稱,經(jīng)理名,電話),其中部門號為主碼。用SQ

溫馨提示

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

評論

0/150

提交評論