【正文】
系統(tǒng)正常運行,保證系統(tǒng)內(nèi)的數(shù)據(jù) 不增加、不丟失、不泄露 。* An Introduction to Database System 1 數(shù)據(jù)庫系統(tǒng)概論 An Introduction to Database System 第四章 數(shù)據(jù)庫安全性 * An Introduction to Database System 2 第四章 數(shù)據(jù)庫安全性 ? 問題的提出 – 數(shù)據(jù)庫的一大特點是數(shù)據(jù)可以 共享 – 但數(shù)據(jù)共享必然帶來數(shù)據(jù)庫的 安全性問題 – 數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù) 共享不能是無條件的共享 例:軍事秘密 、 國家機密 、 新產(chǎn)品實驗數(shù)據(jù) 、 市場需求分析 、 市場營銷策略 、 銷售計劃 、 客戶檔案 、 醫(yī)療檔案 、 銀行儲蓄數(shù)據(jù) * An Introduction to Database System 3 數(shù)據(jù)庫安全性(續(xù)) – 數(shù)據(jù)庫中數(shù)據(jù)的共享是在 DBMS統(tǒng)一的嚴格的控制之下的共享 , 即 只允許有合法使用權限 的用戶訪問允許他存取的數(shù)據(jù) – 數(shù)據(jù)庫系統(tǒng)的 安全保護措施是否有效 是數(shù)據(jù)庫系統(tǒng)主要的性能指標之一 * An Introduction to Database System 4 數(shù)據(jù)庫安全性(續(xù)) ?什么是數(shù)據(jù)庫的 安全性 – 數(shù)據(jù)庫的安全性是指 保護 數(shù)據(jù)庫 , 防止因用戶非法使用數(shù)據(jù)庫造成 數(shù)據(jù)泄露 、 更改或破壞 。 * An Introduction to Database System 12 計算機系統(tǒng)的三類安全性問題(續(xù)) ?管理安全 –軟硬件意外故障、場地的意外事故、管理不善導致 的計算機設備和數(shù)據(jù)介質的物理破壞、丟失等安全問題 * An Introduction to Database System 13 計算機系統(tǒng)的三類安全性問題(續(xù)) ?政策法律類 –政府部門建立的有關計算機犯罪、數(shù)據(jù)安全保密的 法律道德準則和政策法規(guī)、法令 * An Introduction to Database System 14 計算機安全性概論 計算機系統(tǒng)的三類安全性問題 可信計算機系統(tǒng)評測標準(安全標準) * An Introduction to Database System 15 可信計算機系統(tǒng)評測標準 ?為降低進而消除對系統(tǒng)的安全攻擊,各國引用或制定了一系列安全標準 – TCSEC (Trusted Computer System Evaluation Criteria)(桔皮書 ) – TDI (Trusted Database Interpretation)(紫皮書 ) * An Introduction to Database System 16 可信計算機系統(tǒng)評測標準(續(xù)) ? 1985年美國國防部( DoD)正式頒布 《 DoD可信計算機系統(tǒng)評估標準 》 (簡稱 TCSEC或 DoD85) – TCSEC又稱桔皮書 – TCSEC標準的目的 ?提供一種標準,使 用戶 可以對其計算機系統(tǒng)內(nèi)敏感信息安全操作的 可信程度 做 評估 。 – TDI中定義了數(shù)據(jù)庫管理系統(tǒng)的設計與實現(xiàn)中需滿足和用以進行安全性級別評估的標準。 * An Introduction to Database System 26 可信計算機系統(tǒng)評測標準(續(xù)) ?C2級 – 安全產(chǎn)品的最低檔次 – 提供受控的存取保護 ,將 C1級的 DAC進一步細化,以 個人身份注冊負責,并實施審計和資源隔離 – 達到 C2級的產(chǎn)品在其名稱中往往 不突出“安全” (Security)這一特色 * An Introduction to Database System 27 可信計算機系統(tǒng)評測標準(續(xù)) – 典型例子 ? 操作系統(tǒng) – Microsoft的 Windows NT , – 數(shù)字設備公司的 Open VMS VAX ? 數(shù)據(jù)庫 – Oracle公司的 Oracle 7 – Sybase公司的 SQL Server * An Introduction to Database System 28 可信計算機系統(tǒng)評測標準(續(xù)) ?B1級 – 標記安全保護。 – 該級的 TCB必須滿足訪問監(jiān)控器的要求,審計跟蹤能力更強,并提供系統(tǒng)恢復過程。 * An Introduction to Database System 37 第四章 數(shù)據(jù)庫安全性 計算機安全性概論 數(shù)據(jù)庫安全性控制 視圖機制 審計 數(shù)據(jù)加密 統(tǒng)計數(shù)據(jù)庫安全性 小結 * An Introduction to Database System 38 數(shù)據(jù)庫安全性控制 數(shù)據(jù)庫安全性控制概述 用戶標識與鑒別 存取控制 自主存取控制( DAC)方法 授權( Authorization)與回收( Revoke) 數(shù)據(jù)庫角色 強制存取控制( MAC)方法 * An Introduction to Database System 39 數(shù)據(jù)庫安全性控制概述 ?非法使用數(shù)據(jù)庫的情況 – 用戶編寫一段合法的程序 繞過 DBMS及其授權機制,通過操作系統(tǒng)直接存取、修改或備份數(shù)據(jù)庫中的數(shù)據(jù); – 直接或編寫應用程序 執(zhí)行非授權操作 ; * An Introduction to Database System 40 數(shù)據(jù)庫安全性控制概述(續(xù)) – 通過多次合法查詢數(shù)據(jù)庫從中推導出一些保密數(shù)據(jù) 例:某數(shù)據(jù)庫應用系統(tǒng)禁止查詢單個人的工資,但允許查任意一組人的平均工資。 – 檢查存取權限 ?對于通過鑒定獲得上機權的用戶(即合法用戶),系統(tǒng)根據(jù)他的存取權限定義對他的各種操作請求進行控制,確保他只執(zhí)行合法操作。 * An Introduction to Database System 61 自主存取控制 ( DAC) 方法(續(xù)) 例:擴充后的授權表 用戶名 數(shù)據(jù)對象名 允許的操作類型 存取謂詞 王平 關系 Student SELECT Sdept=?CS? 張明霞 關系 Student UPDATE Sname=?張明霞張明霞 關系 Course ALL 空 * An Introduction to Database System 62 自主存取控制 ( DAC) 方法(續(xù)) ?自主存取控制小結 – 定義存取權限 ?用戶 – 檢查存取權限 ?DBMS * An Introduction to Database System 63 自主存取控制 ( DAC) 方法(續(xù)) ?自主存取控制小結 (續(xù) ) – 授權粒度 ?數(shù)據(jù)對象粒度:數(shù)據(jù)庫、表、屬性列、行 – 數(shù)據(jù)值粒度:存取謂詞 ?授權粒度越細,授權子系統(tǒng)就越靈活,能夠提供的安全性就越完善。 ?DBMS的功能是保證這些決定的執(zhí)行。 ?沒有指定 WITH GRANT OPTION子句 : 獲得某種權限的用戶只能使用該權限,不能傳播 該權限 * An Introduction to Database System 72 例題 例 1 把查詢 Student表權限授給用戶 U1 GRANT SELECT ON TABLE Student TO U1。 * An Introduction to Database System 76 例題(續(xù)) 例 5 把對表 SC的 INSERT權限授予 U5用戶 ,并允許他再將此權限授予其他用戶 GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION。 U5 U6 U7 * An Introduction to Database System 78 例題(續(xù)) 例 6 DBA把在數(shù)據(jù)庫 S_C中建立表的權限授予用戶 U8 GRANT CREATETAB ON DATABASE S_C TO U8。 * An Introduction to Database System 82 例題(續(xù)) 例 9 把用戶 U5對 SC表的 INSERT權限收回 REVOKE INSERT ON TABLE SC FROM U5。 * An Introduction to Database System 85 數(shù)據(jù)庫角色 ?角色的創(chuàng)建 * An Introduction to Database System 86 數(shù)據(jù)庫角色 ?角色授權 Grant 權限 [, 權限 ]… on對象類型 對象名 TO 角色 [, 角色 ]… * An Introduction to Database System 87 數(shù)據(jù)庫角色 ?例題 使用角色 R1擁有 Student表的Select,Update,Insert權限。 Revoke R1 From U1 * An Introduction to Database System 92 數(shù)據(jù)庫安全性控制 用戶標識與鑒別 存取控制 自主存取控制( DAC)方法 授權( Authorization)與回收( Revoke) 數(shù)據(jù)庫角色 強制存取控制( MAC)方法 * An Introduction to Database System 93 強制存取控制方法 ?什么是強制存取控制 – 強制存取控制 (MAC)是指系統(tǒng)為保證更高程度的安全性,按照 TDI/TCSEC標準