第 4 講: 安全性_第1頁
第 4 講: 安全性_第2頁
第 4 講: 安全性_第3頁
第 4 講: 安全性_第4頁
第 4 講: 安全性_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1 / 62Outline 數(shù)據(jù)庫安全性控制視圖機(jī)制審計(jì)(Audit)數(shù)據(jù)加密2 / 62數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法3 / 62數(shù)據(jù)庫安全性控制概述非法使用數(shù)據(jù)庫的情況非法使用數(shù)據(jù)庫的情況 用戶編寫一段合法的程序繞過用戶編寫一段合法的程序繞過DBMS及其授權(quán)機(jī)制,及其授權(quán)機(jī)制,通過操作系統(tǒng)直接存取、修改或備份數(shù)據(jù)庫中的數(shù)據(jù);通過操作系統(tǒng)直接存取、修改或備份數(shù)據(jù)庫

2、中的數(shù)據(jù); 直接或編寫應(yīng)用程序執(zhí)行非授權(quán)操作;直接或編寫應(yīng)用程序執(zhí)行非授權(quán)操作; 例子:例子:n如:如:SQL注入攻擊注入攻擊4 / 62數(shù)據(jù)庫安全性控制概述(續(xù))通過多次合法查詢數(shù)據(jù)庫從中推導(dǎo)出一些保密數(shù)據(jù)通過多次合法查詢數(shù)據(jù)庫從中推導(dǎo)出一些保密數(shù)據(jù) 例:某數(shù)據(jù)庫應(yīng)用系統(tǒng)禁止查詢單個(gè)人的工資,但允許查例:某數(shù)據(jù)庫應(yīng)用系統(tǒng)禁止查詢單個(gè)人的工資,但允許查任意一組人的平均工資。用戶甲想了解張三的工資,于任意一組人的平均工資。用戶甲想了解張三的工資,于是他:是他: 首先查詢包括張三在內(nèi)的一組人的平均工資首先查詢包括張三在內(nèi)的一組人的平均工資 然后查用自己替換張三后這組人的平均工資然后查用自己替換張三

3、后這組人的平均工資 從而推導(dǎo)出張三的工資從而推導(dǎo)出張三的工資破壞安全性的行為可能是無意的,故意的,惡意的破壞安全性的行為可能是無意的,故意的,惡意的。5 / 62計(jì)算機(jī)系統(tǒng)中的安全模型計(jì)算機(jī)系統(tǒng)中,安全措施是一級一級層層設(shè)置計(jì)算機(jī)系統(tǒng)中,安全措施是一級一級層層設(shè)置6 / 62數(shù)據(jù)庫安全性控制概述(續(xù))數(shù)據(jù)庫安全性控制的常用方法數(shù)據(jù)庫安全性控制的常用方法 用戶標(biāo)識和鑒定用戶標(biāo)識和鑒定 存取控制存取控制 視圖視圖 審計(jì)審計(jì) 密碼存儲密碼存儲7 / 62數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取

4、控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法8 / 62用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別(用戶標(biāo)識與鑒別(Identification & Authentication) 系統(tǒng)提供的最外層安全保護(hù)措施系統(tǒng)提供的最外層安全保護(hù)措施基本方法基本方法 系統(tǒng)提供一定的方式讓用戶標(biāo)識自己的名字或身份;系統(tǒng)提供一定的方式讓用戶標(biāo)識自己的名字或身份; 系統(tǒng)內(nèi)部記錄著所有合法用戶的標(biāo)識;系統(tǒng)內(nèi)部記錄著所有合法用戶的標(biāo)識; 每次用戶要求進(jìn)入系統(tǒng)時(shí),由系統(tǒng)核對用戶提供的身每次用戶要求進(jìn)入系統(tǒng)時(shí),由系統(tǒng)核對用戶提供的身份標(biāo)識;份標(biāo)識; 通過鑒定后才提供機(jī)器使

5、用權(quán)。通過鑒定后才提供機(jī)器使用權(quán)。 用戶標(biāo)識和鑒定可以重復(fù)多次用戶標(biāo)識和鑒定可以重復(fù)多次9 / 62用戶標(biāo)識自己的名字或身份用戶名用戶名/口令口令 簡單易行,容易被人竊取簡單易行,容易被人竊取每個(gè)用戶預(yù)先約定好一個(gè)每個(gè)用戶預(yù)先約定好一個(gè)計(jì)算過程計(jì)算過程或者或者函數(shù)函數(shù) 系統(tǒng)提供一個(gè)隨機(jī)數(shù)系統(tǒng)提供一個(gè)隨機(jī)數(shù) 用戶根據(jù)自己預(yù)先約定的計(jì)算過程或者函數(shù)進(jìn)行計(jì)算用戶根據(jù)自己預(yù)先約定的計(jì)算過程或者函數(shù)進(jìn)行計(jì)算 系統(tǒng)根據(jù)用戶計(jì)算結(jié)果是否正確鑒定用戶身份系統(tǒng)根據(jù)用戶計(jì)算結(jié)果是否正確鑒定用戶身份字典式字典式攻擊攻擊如,動如,動態(tài)口令態(tài)口令10 / 62 An Introduction to Database S

6、ystems10 / 105數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法11 / 62存取控制存取控制機(jī)制的功能存取控制機(jī)制的功能 定義存取權(quán)限定義存取權(quán)限n在數(shù)據(jù)庫系統(tǒng)中,為了保證用戶只能訪問他有權(quán)存在數(shù)據(jù)庫系統(tǒng)中,為了保證用戶只能訪問他有權(quán)存取的數(shù)據(jù),必須預(yù)先對每個(gè)用戶定義存取權(quán)限取的數(shù)據(jù),必須預(yù)先對每個(gè)用戶定義存取權(quán)限。 檢查存取權(quán)限檢查存取權(quán)限n對于通過鑒定獲得上機(jī)權(quán)的用戶(即合法用戶)

7、,對于通過鑒定獲得上機(jī)權(quán)的用戶(即合法用戶),系統(tǒng)根據(jù)他的存取權(quán)限定義對他的各種操作請求進(jìn)系統(tǒng)根據(jù)他的存取權(quán)限定義對他的各種操作請求進(jìn)行控制,確保他只執(zhí)行合法操作。行控制,確保他只執(zhí)行合法操作。用戶權(quán)限定義和合法權(quán)檢查機(jī)制一起組成了用戶權(quán)限定義和合法權(quán)檢查機(jī)制一起組成了DBMS的安全子系統(tǒng)的安全子系統(tǒng)12 / 62存取控制(續(xù))常用存取控制方法常用存取控制方法 自主存取控制自主存取控制(Discretionary Access Control ,簡稱,簡稱DAC)n C2級級n 靈活靈活 強(qiáng)制存取控制強(qiáng)制存取控制(Mandatory Access Control,簡稱,簡稱 MAC)n B1級

8、級n嚴(yán)格嚴(yán)格13 / 62 An Introduction to Database Systems13 / 105數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法14 / 62自主存取控制方法同一用戶對于不同的數(shù)據(jù)對象有不同的存取權(quán)限同一用戶對于不同的數(shù)據(jù)對象有不同的存取權(quán)限不同的用戶對同一對象也有不同的權(quán)限不同的用戶對同一對象也有不同的權(quán)限用戶還可將其擁有的存取權(quán)限轉(zhuǎn)授給其他用戶用

9、戶還可將其擁有的存取權(quán)限轉(zhuǎn)授給其他用戶15 / 62自主存取控制方法自主存取控制方法(續(xù)續(xù))關(guān)系數(shù)據(jù)庫系統(tǒng)中存取控制對象關(guān)系數(shù)據(jù)庫系統(tǒng)中存取控制對象對象類型對象類型對象對象操操 作作 類類 型型數(shù)據(jù)庫數(shù)據(jù)庫模式模式CREATE SCHEMA基本表基本表CREATE TABLE,ALTER TABLE模式模式視圖視圖CREATE VIEW索引索引CREATE INDEX數(shù)據(jù)數(shù)據(jù)基本表和視圖基本表和視圖SELECT,INSERT,UPDATE,DELETE,REFERENCES,ALL PRIVILEGES數(shù)據(jù)數(shù)據(jù)屬性列屬性列SELECT,INSERT,UPDATE, REFERENCESALL

10、PRIVILEGES16 / 62數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法17 / 62授權(quán)與回收用戶或用戶或DBA把授權(quán)決定告知系統(tǒng),由把授權(quán)決定告知系統(tǒng),由SQL的的GRANT 和和REVOKE語句來完成;語句來完成;DBMS把授權(quán)的結(jié)果存入數(shù)據(jù)字典;把授權(quán)的結(jié)果存入數(shù)據(jù)字典;當(dāng)用戶提出操作請求時(shí),當(dāng)用戶提出操作請求時(shí),DBMS根據(jù)授權(quán)定義進(jìn)根據(jù)授權(quán)定義進(jìn)行檢查,以決定是

11、否執(zhí)行操作請求。行檢查,以決定是否執(zhí)行操作請求。誰定義?誰定義?DBA和數(shù)據(jù)庫對象的建立者(即屬主和數(shù)據(jù)庫對象的建立者(即屬主Owner)如何定義?如何定義?SQL語句語句 GRANT REVOKE18 / 62授權(quán)與回收一、一、GRANTGRANT語句的一般格式:語句的一般格式: GRANT ,. ON TO ,. WITH GRANT OPTION;語義:將對指定操作對象的指定操作權(quán)限授予指定的用戶語義:將對指定操作對象的指定操作權(quán)限授予指定的用戶 19 / 62GRANT發(fā)出發(fā)出GRANT:DBA數(shù)據(jù)庫對象創(chuàng)建者(即屬主數(shù)據(jù)庫對象創(chuàng)建者(即屬主Owner)擁有該權(quán)限的用戶擁有該權(quán)限的用戶

12、按受權(quán)限的用戶按受權(quán)限的用戶 一個(gè)或多個(gè)具體用戶一個(gè)或多個(gè)具體用戶PUBLIC(全體用戶)(全體用戶)20 / 62WITH GRANT OPTION子句WITH GRANT OPTION子句子句: 指定:可以指定:可以再授予再授予 沒有指定:沒有指定:不能傳播不能傳播不允許循環(huán)授權(quán)不允許循環(huán)授權(quán)21 / 62示例示例 例例1 1 把查詢把查詢Student表權(quán)限授給用戶表權(quán)限授給用戶U1U1。 GRANT SELECT ON TABLE Student TO U1;例例2 把對把對Student表和表和Course表的全部權(quán)限授予用戶表的全部權(quán)限授予用戶U2和和U3 GRANT ALL PR

13、IVILEGES ON TABLE Student, Course TO U2, U3;22 / 62示例(續(xù))例例3 把對表把對表SC的查詢權(quán)限授予所有用戶的查詢權(quán)限授予所有用戶 GRANT SELECT ON TABLE SC TO PUBLIC;例例4 把查詢把查詢Student表和修改學(xué)生學(xué)號的權(quán)限授給用戶表和修改學(xué)生學(xué)號的權(quán)限授給用戶U4 GRANT UPDATE(Sno), SELECT ON TABLE Student TO U4;對屬性列的授權(quán)時(shí)必須明確指出相應(yīng)屬性列名對屬性列的授權(quán)時(shí)必須明確指出相應(yīng)屬性列名23 / 62示例(續(xù)) 例例5 把對表把對表SC的的INSERT權(quán)限

14、授予權(quán)限授予U5用戶,并允許他再用戶,并允許他再將此權(quán)限授予其他用戶將此權(quán)限授予其他用戶 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;24 / 62傳播權(quán)限 執(zhí)行例執(zhí)行例5后,后,U5不僅擁有了對表不僅擁有了對表SC的的INSERT權(quán)權(quán) 限,還可以傳播此權(quán)限限,還可以傳播此權(quán)限: 例例6 GRANT INSERT ON TABLE SC TO U6 WITH GRANT OPTION; 同樣,同樣,U6還可以將此權(quán)限授予還可以將此權(quán)限授予U7: 例例7 GRANT INSERT ON TABLE SC TO U7; 但但U7不能再傳播此權(quán)限

15、。不能再傳播此權(quán)限。 U5- U6- U725 / 62傳播權(quán)限(續(xù)) 下表是執(zhí)行了例下表是執(zhí)行了例1到例到例7的語句后,學(xué)生的語句后,學(xué)生-課程數(shù)課程數(shù)據(jù)庫中的用戶權(quán)限定義表據(jù)庫中的用戶權(quán)限定義表 26 / 62授權(quán)與回收(續(xù))二、二、REVOKE授予的權(quán)限可以由授予的權(quán)限可以由DBA或其他授權(quán)者用或其他授權(quán)者用REVOKE語句收語句收回回REVOKE語句的一般格式為:語句的一般格式為: REVOKE ,. ON FROM ,.;27 / 62REVOKE例例8 把用戶把用戶U4修改學(xué)生學(xué)號的權(quán)限收回。修改學(xué)生學(xué)號的權(quán)限收回。 REVOKE UPDATE(Sno) ON TABLE Stud

16、ent FROM U4;例例9 收回所有用戶對表收回所有用戶對表SC的查詢權(quán)限。的查詢權(quán)限。 REVOKE SELECT ON TABLE SC FROM PUBLIC;28 / 62REVOKE(續(xù))-權(quán)限的級聯(lián)回收例例10 把用戶把用戶U5對對SC表的表的INSERT權(quán)限收回權(quán)限收回REVOKE INSERT ON TABLE SC FROM U5 CASCADE ; 將用戶將用戶U5的的INSERT權(quán)限收回的時(shí)候必須級聯(lián)權(quán)限收回的時(shí)候必須級聯(lián)(CASCADE)收回)收回(-U5- U6U5- U6- U7) 29 / 62REVOKE(續(xù)) 執(zhí)行例執(zhí)行例8到例到例10的語句后,學(xué)生的語句

17、后,學(xué)生-課程數(shù)據(jù)庫中的課程數(shù)據(jù)庫中的用戶權(quán)限定義表用戶權(quán)限定義表授權(quán)用戶名授權(quán)用戶名被授權(quán)用戶名被授權(quán)用戶名數(shù)據(jù)庫對象名數(shù)據(jù)庫對象名允許的操作類型允許的操作類型 能否轉(zhuǎn)授權(quán)能否轉(zhuǎn)授權(quán)DBAU1關(guān)系關(guān)系StudentSELECT不能不能DBAU2關(guān)系關(guān)系StudentALL不能不能DBAU2關(guān)系關(guān)系CourseALL不能不能DBAU3關(guān)系關(guān)系StudentALL不能不能DBAU3關(guān)系關(guān)系CourseALL不能不能DBAU4關(guān)系關(guān)系StudentSELECT不能不能30 / 62小結(jié):SQL靈活的授權(quán)機(jī)制DBA:擁有所有對象的所有權(quán)限:擁有所有對象的所有權(quán)限 不同的權(quán)限授予不同的用戶不同的權(quán)限授

18、予不同的用戶用戶用戶:擁有自己建立的表或視圖的全部的操作權(quán)限:擁有自己建立的表或視圖的全部的操作權(quán)限 GRANT:授予其他用戶:授予其他用戶被授權(quán)的用戶被授權(quán)的用戶 “繼續(xù)授權(quán)繼續(xù)授權(quán)”許可:再授予許可:再授予所有授予出去的權(quán)力在必要時(shí)又都可用所有授予出去的權(quán)力在必要時(shí)又都可用REVOKE語句收回語句收回31 / 62授權(quán)與回收(續(xù))三、創(chuàng)建數(shù)據(jù)庫模式的權(quán)限三、創(chuàng)建數(shù)據(jù)庫模式的權(quán)限 DBA在創(chuàng)建用戶時(shí)實(shí)現(xiàn)在創(chuàng)建用戶時(shí)實(shí)現(xiàn)CREATE USER語句格式語句格式 CREATE USER WITHDBA | RESOURCE | CONNECTDBA:超級用戶,能創(chuàng)建模式和新用戶、基本表和視圖:超級

19、用戶,能創(chuàng)建模式和新用戶、基本表和視圖RESOURCE:能創(chuàng)建基本表和視圖,不能創(chuàng)建模式和新用戶:能創(chuàng)建基本表和視圖,不能創(chuàng)建模式和新用戶CONNECT:僅能登錄數(shù)據(jù)庫(默認(rèn)權(quán)限):僅能登錄數(shù)據(jù)庫(默認(rèn)權(quán)限)32 / 62授權(quán)與回收(續(xù))擁有的權(quán)限擁有的權(quán)限可否執(zhí)行的操作可否執(zhí)行的操作CREATE USERCREATE SCHEMACREATE TABLE登錄數(shù)據(jù)庫登錄數(shù)據(jù)庫 執(zhí)行數(shù)執(zhí)行數(shù)據(jù)查詢和操縱據(jù)查詢和操縱DBA可以可以可以可以可以可以可以可以RESOURCE不可以不可以不可以不可以可以可以可以可以CONNECT不可以不可以不可以不可以不可以不可以可以,但必須擁有相可以,但必須擁有相應(yīng)權(quán)

20、限應(yīng)權(quán)限權(quán)限與可執(zhí)行的操作對照表權(quán)限與可執(zhí)行的操作對照表 33 / 62數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法34 / 62數(shù)據(jù)庫角色數(shù)據(jù)庫角色:被命名的一組與數(shù)據(jù)庫操作相關(guān)的數(shù)據(jù)庫角色:被命名的一組與數(shù)據(jù)庫操作相關(guān)的權(quán)限權(quán)限 角色是權(quán)限的集合角色是權(quán)限的集合 可以為一組具有相同權(quán)限的用戶創(chuàng)建一個(gè)角色可以為一組具有相同權(quán)限的用戶創(chuàng)建一個(gè)角色 簡化授權(quán)的過程簡化授權(quán)的過程35

21、 / 62數(shù)據(jù)庫角色(續(xù))一、角色的創(chuàng)建一、角色的創(chuàng)建CREATE ROLE 二、給角色授權(quán)二、給角色授權(quán) GRANT , ON 對象名對象名 TO ,36 / 62數(shù)據(jù)庫角色(續(xù))三、將一個(gè)角色授予其他的角色或用戶三、將一個(gè)角色授予其他的角色或用戶GRANT ,TO , WITH ADMIN OPTION 可以再將權(quán)限授予其他角色可以再將權(quán)限授予其他角色四、角色權(quán)限的收回四、角色權(quán)限的收回 REVOKE ,ON FROM ,37 / 62數(shù)據(jù)庫角色(續(xù))例例11通過角色來實(shí)現(xiàn)將一組權(quán)限授予一個(gè)用戶。通過角色來實(shí)現(xiàn)將一組權(quán)限授予一個(gè)用戶。步驟如下:步驟如下:1. 首先創(chuàng)建一個(gè)角色首先創(chuàng)建一個(gè)角

22、色 R1 CREATE ROLE R1;2. 然后使用然后使用GRANT語句,使角色語句,使角色R1擁有擁有Student表的表的SELECT、UPDATE、INSERT權(quán)限權(quán)限 GRANT SELECT,UPDATE,INSERT ON TABLE Student TO R1;38 / 62數(shù)據(jù)庫角色(續(xù))3. 將這個(gè)角色授予王平,張明,趙玲。使他們具有角色將這個(gè)角色授予王平,張明,趙玲。使他們具有角色R1所包含的全部權(quán)限所包含的全部權(quán)限 GRANT R1 TO 王平,張明,趙玲;王平,張明,趙玲;4. 可以一次性通過可以一次性通過R1來回收王平的這來回收王平的這3個(gè)權(quán)限個(gè)權(quán)限 REVOKE

23、 R1 FROM 王平;王平;39 / 62數(shù)據(jù)庫角色數(shù)據(jù)庫角色(續(xù)續(xù))例例12 角色的權(quán)限修改角色的權(quán)限修改 GRANT DELETE ON TABLE Student TO R1l在原來基礎(chǔ)上增加刪在原來基礎(chǔ)上增加刪除權(quán)限除權(quán)限例例13 角色權(quán)限的回收角色權(quán)限的回收 REVOKE SELECT ON TABLE Student FROM R1;40 / 62自主存取控制優(yōu)缺點(diǎn)優(yōu)點(diǎn):優(yōu)點(diǎn):能夠通過授權(quán)機(jī)制有效地控制其他用戶對敏感數(shù)據(jù)的存取能夠通過授權(quán)機(jī)制有效地控制其他用戶對敏感數(shù)據(jù)的存取缺點(diǎn):缺點(diǎn):可能存在數(shù)據(jù)的可能存在數(shù)據(jù)的“無意泄露無意泄露”原因:這種機(jī)制僅僅通過對數(shù)據(jù)的存取權(quán)限來進(jìn)行安

24、全控制,原因:這種機(jī)制僅僅通過對數(shù)據(jù)的存取權(quán)限來進(jìn)行安全控制,而數(shù)據(jù)本身并無安全性標(biāo)記而數(shù)據(jù)本身并無安全性標(biāo)記解決:對系統(tǒng)控制下的所有主客體實(shí)施強(qiáng)制存取控制策略解決:對系統(tǒng)控制下的所有主客體實(shí)施強(qiáng)制存取控制策略 41 / 62數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制1. 數(shù)據(jù)庫安全性控制概述數(shù)據(jù)庫安全性控制概述2. 用戶標(biāo)識與鑒別用戶標(biāo)識與鑒別3. 存取控制存取控制4. 自主存取控制方法自主存取控制方法5. 授權(quán)與回收授權(quán)與回收6. 數(shù)據(jù)庫角色數(shù)據(jù)庫角色7. 強(qiáng)制存取控制方法強(qiáng)制存取控制方法42 / 62強(qiáng)制存取控制方法強(qiáng)制存取控制(強(qiáng)制存取控制(MAC) 保證更高程度的安全性保證更高程度的安全性 用

25、戶不能直接感知或進(jìn)行控制用戶不能直接感知或進(jìn)行控制 適用于對數(shù)據(jù)有嚴(yán)格而固定密級分類的部門適用于對數(shù)據(jù)有嚴(yán)格而固定密級分類的部門 軍事部門軍事部門 政府部門政府部門43 / 62強(qiáng)制存取控制方法(續(xù))每一個(gè)數(shù)據(jù)對象被標(biāo)以一定的密級每一個(gè)數(shù)據(jù)對象被標(biāo)以一定的密級每一個(gè)用戶也被授予某一個(gè)級別的許可證每一個(gè)用戶也被授予某一個(gè)級別的許可證對于任意一個(gè)對象,只有具有合法許可證的用戶才可以對于任意一個(gè)對象,只有具有合法許可證的用戶才可以存取存取44 / 62強(qiáng)制存取控制方法(續(xù))在在MAC中,中,DBMS管理的全部實(shí)體被分為主體和客體兩管理的全部實(shí)體被分為主體和客體兩大類。大類。主體主體是系統(tǒng)中的活動實(shí)體

26、是系統(tǒng)中的活動實(shí)體 DBMS所管理的實(shí)際用戶所管理的實(shí)際用戶 代表用戶的各進(jìn)程代表用戶的各進(jìn)程客體客體是系統(tǒng)中的被動實(shí)體,是受主體操縱的是系統(tǒng)中的被動實(shí)體,是受主體操縱的 文件文件 基表基表 索引索引 視圖視圖45 / 62強(qiáng)制存取控制方法(續(xù))敏感度標(biāo)記級別敏感度標(biāo)記級別 絕密(絕密(Top Secret) 機(jī)密(機(jī)密(Secret) 可信(可信(Confidential) 公開(公開(Public)主體的敏感度標(biāo)記稱為許可證級別(主體的敏感度標(biāo)記稱為許可證級別(Clearance Level)客體的敏感度標(biāo)記稱為密級(客體的敏感度標(biāo)記稱為密級(Classification Level)對于

27、主體和客體,對于主體和客體,DBMSDBMS為它們每個(gè)實(shí)例(值)指派一個(gè)敏感為它們每個(gè)實(shí)例(值)指派一個(gè)敏感度標(biāo)記(度標(biāo)記(LabelLabel)MACMAC機(jī)制就是通過對比主體的機(jī)制就是通過對比主體的LabelLabel和客體的和客體的LabelLabel,最終確定,最終確定主體是否能夠存取客體主體是否能夠存取客體46 / 62強(qiáng)制存取控制方法(續(xù)) 強(qiáng)制存取控制規(guī)則強(qiáng)制存取控制規(guī)則 (1)僅當(dāng)主體的許可證級別僅當(dāng)主體的許可證級別大于或等于大于或等于客體的密級時(shí),該客體的密級時(shí),該主體才能主體才能讀讀取相應(yīng)的客體取相應(yīng)的客體 (2)僅當(dāng)主體的許可證級別僅當(dāng)主體的許可證級別等于等于客體的密級時(shí)

28、,該主體才客體的密級時(shí),該主體才能能寫寫相應(yīng)的客體相應(yīng)的客體修正規(guī)則修正規(guī)則 主體的許可證級別主體的許可證級別 =客體的密級客體的密級 主體能寫客體主體能寫客體47 / 62強(qiáng)制存取控制方法(續(xù))MAC是對數(shù)據(jù)本身進(jìn)行密級標(biāo)記是對數(shù)據(jù)本身進(jìn)行密級標(biāo)記無論數(shù)據(jù)如何復(fù)制,標(biāo)記與數(shù)據(jù)是一個(gè)不可分的無論數(shù)據(jù)如何復(fù)制,標(biāo)記與數(shù)據(jù)是一個(gè)不可分的整體整體只有符合密級標(biāo)記要求的用戶才可以操縱數(shù)據(jù),只有符合密級標(biāo)記要求的用戶才可以操縱數(shù)據(jù),從而提供了更高級別的安全性從而提供了更高級別的安全性48 / 62MAC與DACDAC與與MAC共同構(gòu)成共同構(gòu)成DBMS的安全機(jī)制的安全機(jī)制實(shí)現(xiàn)實(shí)現(xiàn)MAC時(shí)要首先實(shí)現(xiàn)時(shí)要首先

29、實(shí)現(xiàn)DAC 原因:較高安全性級別提供的安全保護(hù)要包含較低級原因:較高安全性級別提供的安全保護(hù)要包含較低級別的所有保護(hù)別的所有保護(hù)49 / 62強(qiáng)制存取控制方法(續(xù))DAC + MAC安全檢查示意圖安全檢查示意圖 SQL語法分析語法分析 & 語義檢查語義檢查 DAC 檢檢 查查 安全檢查安全檢查 MAC 檢檢 查查 繼繼 續(xù)續(xù)先進(jìn)行先進(jìn)行DAC檢查,通過檢查,通過DAC檢查的數(shù)據(jù)對象再由系統(tǒng)進(jìn)檢查的數(shù)據(jù)對象再由系統(tǒng)進(jìn)行行MAC檢查,只有通過檢查,只有通過MAC檢查的數(shù)據(jù)對象方可存取。檢查的數(shù)據(jù)對象方可存取。50 / 62Outline 數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制視圖機(jī)制視圖機(jī)制審計(jì)

30、審計(jì)(Audit)數(shù)據(jù)加密數(shù)據(jù)加密51 / 62視圖機(jī)制視圖機(jī)制把要保密的數(shù)據(jù)對無權(quán)存取這些數(shù)據(jù)的用戶視圖機(jī)制把要保密的數(shù)據(jù)對無權(quán)存取這些數(shù)據(jù)的用戶隱藏起來,隱藏起來, 視圖機(jī)制更主要的功能在于提供數(shù)據(jù)獨(dú)立性,其安全視圖機(jī)制更主要的功能在于提供數(shù)據(jù)獨(dú)立性,其安全保護(hù)功能不太精細(xì),往往遠(yuǎn)不能達(dá)到應(yīng)用系統(tǒng)的要求。保護(hù)功能不太精細(xì),往往遠(yuǎn)不能達(dá)到應(yīng)用系統(tǒng)的要求。52 / 62視圖機(jī)制(續(xù))l視圖機(jī)制與授權(quán)機(jī)制配合使用視圖機(jī)制與授權(quán)機(jī)制配合使用:l首先用視圖機(jī)制屏蔽掉一部分保密數(shù)據(jù)首先用視圖機(jī)制屏蔽掉一部分保密數(shù)據(jù)l視圖上面再進(jìn)一步定義存取權(quán)限視圖上面再進(jìn)一步定義存取權(quán)限l間接實(shí)現(xiàn)了支持存取謂詞的用戶

31、權(quán)限定義間接實(shí)現(xiàn)了支持存取謂詞的用戶權(quán)限定義53 / 62視圖機(jī)制(續(xù))例例14建立計(jì)算機(jī)系學(xué)生的視圖,把對該視圖的建立計(jì)算機(jī)系學(xué)生的視圖,把對該視圖的SELECT權(quán)權(quán)限授于王平,把該視圖上的所有操作權(quán)限授于張明限授于王平,把該視圖上的所有操作權(quán)限授于張明 先建立計(jì)算機(jī)系學(xué)生的視圖先建立計(jì)算機(jī)系學(xué)生的視圖CS_Student CREATE VIEW CS_Student AS SELECT * FROM Student WHERE Sdept=CS;54 / 62視圖機(jī)制(續(xù))在視圖上進(jìn)一步定義存取權(quán)限在視圖上進(jìn)一步定義存取權(quán)限 GRANT SELECT ON CS_Student TO 王平

32、王平 ; GRANT ALL PRIVILIGES ON CS_Student TO 張明;張明; 55 / 62Outline 數(shù)據(jù)庫安全性控制數(shù)據(jù)庫安全性控制視圖機(jī)制視圖機(jī)制審計(jì)審計(jì)(Audit)數(shù)據(jù)加密數(shù)據(jù)加密56 / 62審計(jì)什么是審計(jì)什么是審計(jì) 啟用一個(gè)專用的審計(jì)日志(啟用一個(gè)專用的審計(jì)日志(Audit Log) 將用戶對數(shù)據(jù)庫的所有操作記錄在上面將用戶對數(shù)據(jù)庫的所有操作記錄在上面 DBA可以利用審計(jì)日志中的追蹤信息可以利用審計(jì)日志中的追蹤信息 找出非法存取數(shù)據(jù)的人找出非法存取數(shù)據(jù)的人 C2以上安全級別的以上安全級別的DBMS必須具有審計(jì)功能必須具有審計(jì)功能57 / 62審計(jì)(續(xù))審計(jì)分為審計(jì)分為 用戶級審計(jì)用戶級審計(jì)針對自己創(chuàng)建的數(shù)據(jù)庫表或視圖進(jìn)行審計(jì)針對自己創(chuàng)建的數(shù)據(jù)庫表或視圖進(jìn)行審計(jì) 記錄所有用戶對這些表或視圖的一切成功和(或)不成記錄所有用戶對這些表或視圖的一切成功和(或)不成功的訪問要求以及各種類型的功的訪問要求以及各種類型的SQL操作操作 系統(tǒng)

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論