數(shù)據(jù)庫安全性習(xí)題解答和解析



《數(shù)據(jù)庫安全性習(xí)題解答和解析》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫安全性習(xí)題解答和解析(7頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、第九章 數(shù)據(jù)庫安全性習(xí)題解答和解析 1. 1。???? 什么是數(shù)據(jù)庫的安全性? 答:數(shù)據(jù)庫的安全性是指保護(hù)數(shù)據(jù)庫以防止不合法的使用所造成的數(shù)據(jù)泄露、更改或破壞。 ? 2. 2。???? 數(shù)據(jù)庫安全性和計算機(jī)系統(tǒng)的安全性有什么關(guān)系? 答:安全性問題不是數(shù)據(jù)庫系統(tǒng)所獨有的,所有計算機(jī)系統(tǒng)都有這個問題.只是在數(shù)據(jù)庫系統(tǒng)中大量數(shù)據(jù)集中存放,而且為許多最終用戶直接共享,從而使安全性問題更為突出. 系統(tǒng)安全保護(hù)措施是否有效是數(shù)據(jù)庫系統(tǒng)的主要指標(biāo)之一。數(shù)據(jù)庫的安全性和計算機(jī)系統(tǒng)的安全性,包括操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)的安全性是緊密聯(lián)系、相互支持的. ? 3.試述可信計算機(jī)系統(tǒng)評測標(biāo)準(zhǔn)的情況,試述TD
2、I/TCSEC標(biāo)準(zhǔn)的基本內(nèi)容。 答:各個國家在計算機(jī)安全技術(shù)方面都建立了一套可信標(biāo)準(zhǔn).目前各國引用或制定的一系列安全標(biāo)準(zhǔn)中,最重要的是美國國防部(DoD)正式頒布的《DoD可信 計算機(jī)系統(tǒng)評估標(biāo)準(zhǔn)》(Trusted Computer System Evaluation Criteria,簡稱 TCSEC,又稱桔皮書)。(詳細(xì)介紹參見《概論》9。1.2)。 TDI/TCSEC標(biāo)準(zhǔn)是將TCSEC擴(kuò)展到數(shù)據(jù)庫管理系統(tǒng),即《可信計算機(jī)系統(tǒng)評估標(biāo)準(zhǔn)關(guān)于可信數(shù)據(jù)庫系統(tǒng)的解釋》(Trusted Database Interpretation 簡稱TDI, 又稱紫皮書)。在TDI中定義了數(shù)據(jù)庫管理系統(tǒng)的設(shè)
3、計與實現(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ù)計算機(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 Design)
4、 B3 安全域 (Security Domains) B2 結(jié)構(gòu)化保護(hù) (Structural protection) B1 標(biāo)記安全保護(hù) (labeled Security protection) C2 受控的存取保護(hù) (Controlled Access protection) C1 自主安全保護(hù) (Discretionary Security protection) D 最小保護(hù) (Minimal protection) ? 這些安全級別之間具有一種偏序向下兼容的關(guān)系,即較高安全性級別提供的安全保護(hù)包
5、含較低級別的所有保護(hù)要求,同時提供更多或更完善的保護(hù)能力.各個等級的基本內(nèi)容為: D級 D級是最低級別.一切不符合更高標(biāo)準(zhǔn)的系統(tǒng),統(tǒng)統(tǒng)歸于D組。 C1級 只提供了非常初級的自主安全保護(hù)。能夠?qū)崿F(xiàn)對用戶和數(shù)據(jù)的分離,進(jìn)行自主存取控制(DAC),保護(hù)或限制用戶權(quán)限的傳播。 C2級 實際是安全產(chǎn)品的最低檔次,提供受控的存取保護(hù),即將C1級的DAC進(jìn)一步細(xì)化,以個人身份注冊負(fù)責(zé),并實施審計和資源隔離。 Bl級 標(biāo)記安全保護(hù)。對系統(tǒng)的數(shù)據(jù)加以標(biāo)記,并對標(biāo)記的主體和客體實施強制存取控制(MAC)以及審計等安全機(jī)制. B2級 結(jié)構(gòu)化保護(hù)。建立形式化的安全策略模型并對系統(tǒng)內(nèi)的所有主體和客體實施DA
6、C和MAC。 B3級 安全域。該級的TCB(可信計算機(jī)庫)必須滿足訪問監(jiān)控器的要求,審計跟蹤能力更強,并提供系統(tǒng)恢復(fù)過程。 A1級 驗證設(shè)計,即提供B3級保護(hù)的同時給出系統(tǒng)的形式化設(shè)計說明和驗證以確信各安全保護(hù)真正實現(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)行
7、核對,通過鑒定后才提供系統(tǒng)的使用權(quán)。 (2)存取控制:通過用戶權(quán)限定義和合法權(quán)檢查確保只有合法權(quán)限的用戶訪問數(shù)據(jù)庫,所有未被授權(quán)的人員無法存取數(shù)據(jù)。例如 C2 級中的自主存取控制(DAC),B1級中的強制存取控制(MAC)。 (3)視圖機(jī)制:為不同的用戶定義視圖,通過視圖機(jī)制把要保密的數(shù)據(jù)對無權(quán)存取的用戶隱藏起來,從而自動地對數(shù)據(jù)提供一定程度的安全保護(hù). (4)審計:建立審計日志,把用戶對數(shù)據(jù)庫的所有操作自動記錄下來放入審 計日志中,DBA可以利用審計跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件, 找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。 (5)數(shù)據(jù)加密:對存儲和傳輸?shù)臄?shù)據(jù)進(jìn)行加密處理,
8、從而使得不知道解密算法的人無法獲知數(shù)據(jù)的內(nèi)容。 具體內(nèi)容請參見《概論》 9.2. ? 6.什么是數(shù)據(jù)庫中的自主存取控制方法和強制存取控制方法? 答:自主存取控制方法:定義各個用戶對不同數(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。SQ
9、L語言中提供了哪些數(shù)據(jù)控制(自主存取控制)的語句?請試舉幾例說明它們的使用方法。 答:SQL中的自主存取控制是通過GRANT語句和REVOKE語句來實現(xiàn)的。如:GRANT SELECT,INSERT ON Student TO 王平 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)
10、限從用戶王平處收回,選項CASCADE表示,如果用戶王平將Student的INSERT權(quán)限又轉(zhuǎn)授給了其他用戶,那么這些權(quán)限也將從其他用戶處收回。 ? 8.今有兩個關(guān)系模式: 職工(職工號,姓名,年齡,職務(wù),工資,部門號) 部門(部門號,名稱,經(jīng)理名,地址,電話號) 請用SQL的GRANT和REVOKE語句(加上視圖機(jī)制)完成以下授權(quán)定義或存取控制功能: (1)用戶王明對兩個表有SELECT權(quán)力. GRANT SELECT ON 職工,部門 TO 王明; (2)用戶李勇對兩個表有INSERT和DELETE權(quán)力. GRANT INSERT,DELETE ON 職工,部門
11、 TO 李勇; (3)*每個職工只對自己的記錄有SELECT權(quán)力。 GRANT SELECT ON 職工 WHEN USER()=NAME TO ALL; 這里假定系統(tǒng)的GRANT語句支持WHEN子句和USER()的使用。用戶將自己的名字作為ID。注意,不同的系統(tǒng)這些擴(kuò)展語句可能是不同的.讀者應(yīng)該了解你使用的DBMS產(chǎn)品的擴(kuò)展語句. (4)用戶劉星對職工表有SELECT權(quán)力,對工資字段具有更新權(quán)力。 GRANT SELECT,UPDATE(工資) ON 職工 TO 劉星; (5)用戶張新具有修改這兩個表的結(jié)構(gòu)的權(quán)力. GRANT ALTER TABLE ON 職工,
12、部門 TO 張新; (6)用戶周平具有對兩個表所有權(quán)力(讀,插,改,刪數(shù)據(jù)),并具有給其他用戶授權(quán)的權(quán)力. GRANT AIL PRIVILIGES ON 職工,部門 TO 周平 WITH GRANT OPTION; (7)用戶楊蘭具有從每個部門職工中SELECT最高工資、最低工資、平均工資的權(quán)力,他不能查看每個人的工資。 首先建立一個視圖。然后對這個視圖定義楊蘭的存取權(quán)限。 CREATE VIEW 部門工資 AS SELECT 部門。名稱,MAX(工資),MIN(工資),AVG(工資) FROM 職工,部門 WHERE 職工。部門號=部門.部門號 GROUP BY
13、 職工.部門號; ? GRANT SELECT ON 部門工資 TO 楊蘭; ? 9。把習(xí)題8中(1)-(7)的每一種情況,撤銷各用戶所授予的權(quán)力. 答: (1) REVOKE SELECT ON 職工,部門 FROM 王明; (2) REVOKE INSERT,DEIEIE ON 職工,部門 FROM 李勇; (3) REOVKE SELECT ON 職工 WHEN USER()=NAME FROM AIL; 這里假定用戶將自己的名字作為ID,且系統(tǒng)的REOVKE語句支持WHEN子句,系統(tǒng)也支持USER()的使用。 (4) REVOKE SELECT,UP
14、DATE ON 職工 FROM 劉星; (5) REVOKE ALTER TABIE ON 職工,部門 FROM 張新; (6) REVOKE AIL PRIVILIGES ON 職工,部門 FROM 周平; (7) REVOKE SELECT ON 部門工資 FROM 楊蘭; DROP VIEW 部門工資; ? 10。為什么強制存取控制提供了更高級別的數(shù)據(jù)庫安全性? 答:強制存取控制(MAC)是對數(shù)據(jù)本身進(jìn)行密級標(biāo)記,無論數(shù)據(jù)如何復(fù)制,標(biāo)記與數(shù)據(jù)是一個不可分的整體,只有符合密級標(biāo)記要求的用戶才可以操縱數(shù)據(jù),從而提供了更高級別的安全性。 ? 11.理解并解釋MAC
15、機(jī)制中主體、客體、敏感度標(biāo)記的含義。 答:主體是系統(tǒng)中的活動實體,既包括DBMS所管理的實際用戶,也包括代表用戶的各進(jìn)程。 客體是系統(tǒng)中的被動實體,是受主體操縱的,包括文件、基表、索引、視圖等。 對于主體和客體,DBMS為它們每個實例(值)指派一個敏感度標(biāo)記(Label).敏感度標(biāo)記被分成若干級別,例如絕密(Top Secret)、機(jī)密(Secret)、可信(Confidential)、公開(Public) 等。主體的敏感度標(biāo)記稱為許可證級別 (Clearance Level),客體的敏感度標(biāo)記稱為密級(Classification kvel)。 ? 12。舉例說明MAC機(jī)制如何確定
16、主體能否存取客體。 答:假設(shè)要對關(guān)系變量S進(jìn)行MAC控制,為簡化起見,假設(shè)要控制存取的數(shù)據(jù)單元是元組,則每個元組標(biāo)以密級,如下表所示:(4=絕密,3=機(jī)密,2=秘密) ? S# SNAME STATUS CITY CLASS S1 Smith 20 London 2 S2 Jones 10 paris 3 S3 Clark 20 london 4 ? 假設(shè)用戶U1和U2的許可證級別分別為3和2,則根據(jù)規(guī)則U1能查得元組S1和S2, 可修改元組S2;而U2只能查得元組S1,只能修改元組S1。 解析:這里假設(shè)系統(tǒng)的存取規(guī)則是:(1)僅當(dāng)主
17、體的許可證級別大于或等于客體的密級時才能讀取相應(yīng)的客體;(2)僅當(dāng)主體的許可證級別等于客體的密級時才能寫相應(yīng)的客體。 ? 13.什么是數(shù)據(jù)庫的審計功能,為什么要提供審計功能? 答:審計功能是指DBMS的審計模塊在用戶對數(shù)據(jù)庫執(zhí)行操作的同時把所有操作自動記錄到系統(tǒng)的審計日志中. 因為任何系統(tǒng)的安全保護(hù)措施都不是完美無缺的,蓄意盜竊破壞數(shù)據(jù)的人總可能存在。利用數(shù)據(jù)庫的審計功能,DBA可以根據(jù)審計跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。 ? 14。統(tǒng)計數(shù)據(jù)庫中存在何種特殊的安全性問題? 答:統(tǒng)計數(shù)據(jù)庫允許用戶查詢聚集類型的信息,如合計、平均值
18、、最大值、最小值等,不允許查詢單個記錄信息。但是,人們可以從合法的查詢中推導(dǎo)出不合法的信息,即可能存在隱蔽的信息通道,這是統(tǒng)計數(shù)據(jù)庫要研究和解決的特殊的安全性問題。 ? *15.試述你了解的某一個實際的DBMS產(chǎn)品的安全性措施。 答:不同的DBMS產(chǎn)品以及同一產(chǎn)品的不同版本的安全措施各不相同,仁者見仁,智者見智,請讀者自己了解?!陡耪摗飞?.4簡單介紹了有關(guān)Oracle 數(shù)據(jù)庫的 安全性措施。 ? 第十章 數(shù)據(jù)庫完整性 習(xí)題解答和解析 1.什么是數(shù)據(jù)庫的完整性? 答:數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性. 2.數(shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的安全性概念有什么區(qū)別和聯(lián)系? 答:
19、數(shù)據(jù)的完整性和安全性是兩個不同的概念,但是有一定的聯(lián)系。前者是為了防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),防止錯誤信息的輸入和輸出,即所謂垃圾進(jìn)垃圾出(Garbage In Garbage Out)所造成的無效操作和錯誤結(jié)果。后者是保護(hù)數(shù)據(jù)庫防止惡意的破壞和非法的存取.也就是說,安全性措施的防范對象是非法用戶和非法操作,完整性措施的防范對象是不合語義的數(shù)據(jù)。 3.什么是數(shù)據(jù)庫的完整性約束條件?可分為哪幾類? 答:完整性約束條件是指數(shù)據(jù)庫中的數(shù)據(jù)應(yīng)該滿足的語義約束條件。一般可以分為六類:靜態(tài)列級約束、靜態(tài)元組約束、靜態(tài)關(guān)系約束、動態(tài)列級約束、動態(tài)元組約束、動態(tài)關(guān)系約束. 靜態(tài)列級約束是對一個列的
20、取值域的說明,包括以下幾個方面: (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)列級約束是修改列定義或列值時應(yīng)滿足的約束條件,包括下面兩方面:(1)修改列定義時的約束; (2)修改列值時的約
21、束。 動態(tài)元組約束是指修改某個元組的值時需要參照其舊值,并且新舊值之間 需要滿足某種約束條件。 動態(tài)關(guān)系約束是加在關(guān)系變化前后狀態(tài)上的限制條件,例如事務(wù)一致性、原子性等約束條件.詳細(xì)內(nèi)容可以參見《概論》10。1中的介紹。 4。DBMS的完整性控制機(jī)制應(yīng)具有哪些功能? 答:DBMS的完整性控制機(jī)制應(yīng)具有三個方面的功能: (1)定義功能,即提供定義完整性約束條件的機(jī)制; (2)檢查功能,即檢查用戶發(fā)出的操作請求是否違背了完整性約束條件; (3)違約反應(yīng),如果發(fā)現(xiàn)用戶的操作請求使數(shù)據(jù)違背了完整性約束條件,則采取一定的動作來保證數(shù)據(jù)的完整性。 5。RDBMS在實現(xiàn)參照完整性時需要考慮哪
22、些方面? 答: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)系中。如果允許修改主碼,首先要保證主碼的惟一性和非空,否則拒絕
23、修改.然后要區(qū)分是參照關(guān)系還是被參照關(guān)系。 詳細(xì)討論可以參見《概論》10。2。 6.假設(shè)有下面兩個關(guān)系模式: 職工(職工號,姓名,年齡,職務(wù),工資,部門號),其中職工號為主碼; 部門(部門號,名稱,經(jīng)理名,電話),其中部門號為主碼。 用SQL語言定義這兩個關(guān)系模式,要求在模式中完成以下完整性約束條件的定義: 定義每個模式的主碼;定義參照完整性;定義職工年齡不得超過60歲。 答:CREATE TABLE DEPT (Deptno NUMBER(2), Deptname VARCHAR(10), Manager VARCHAR(10), phoneNumber Char(12
24、) CONSTRAINT PK_SC PRIMARY KEY (Deptno)); CREATE TABIE EMP (Empno NUMBER(4), Ename VARCHAR(10), Age NUMBER(2), CONSTRAINT Cl CHECK (Age〈=60), Job VARCHAR(9), Sal NUMBER(7,2), Deptno NUMBER(2), CONSTRAINT FK_DEPINO FOREIGN KEY (Deptno) REFERENCES DEPT(Deptno)); 7.關(guān)系系統(tǒng)中,當(dāng)操作違反實體完整性、參照完整性和用戶定義的完整性約束條件時,一般是如何分別進(jìn)行處理的? 答:對于違反實體完整性和用戶定義的完整性的操作一般都采用拒絕執(zhí)行的方式進(jìn)行處理。而對于違反參照完整性的操作,并不都是簡單地拒絕執(zhí)行,有時要 根據(jù)應(yīng)用語義執(zhí)行一些附加的操作,以保證數(shù)據(jù)庫的正確性。具體的處理可以參見上面第 5 題或《概論》10。2中相應(yīng)部分。 *8.試述你了解的某一個實際的DBMS產(chǎn)品的完整性控制策略。 答:不同的DBMS產(chǎn)品以及同一產(chǎn)品的不同版本的完整性控制策略各不相同,讀者要去了解某一個具體的DBMS產(chǎn)品的完整性控制策略。 《概論》10.3簡單介紹了有關(guān)Oracle數(shù)據(jù)庫的完整性控制策略.
- 溫馨提示:
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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 離心泵的檢修各零部件檢修標(biāo)準(zhǔn)
- 金屬材料疲勞強度的八大主要影響因素
- 機(jī)械安全知識
- 電機(jī)的工作原理與種類
- 設(shè)備點檢內(nèi)容
- 有效防止液壓系統(tǒng)漏油的技術(shù)要領(lǐng)
- 鈑金和管工機(jī)械安全操作規(guī)程
- 閥門的100個專業(yè)術(shù)語
- 某單位機(jī)械設(shè)備安全檢查表
- 離心泵的汽蝕與吸入特性
- 過濾網(wǎng)目數(shù)標(biāo)準(zhǔn)
- 減少設(shè)備潤滑故障的措施
- 離心泵機(jī)械密封安裝使用規(guī)則
- 閥門常見故障與原因
- 呼吸閥和真空破壞閥基礎(chǔ)知識總結(jié)