第四章 數據庫安全性
《第四章 數據庫安全性》由會員分享,可在線閱讀,更多相關《第四章 數據庫安全性(76頁珍藏版)》請在裝配圖網上搜索。
1、2021年9月18日 1數數據庫系統(tǒng)概論據庫系統(tǒng)概論第四章 數據庫安全性2021年9月18日 2主要內容主要內容4.1 計算機安全性概論計算機安全性概論4.2 數據庫安全性控制數據庫安全性控制4.3 視圖機制視圖機制4.4 審計審計4.5 數據加密數據加密4.6 統(tǒng)計數據庫安全性統(tǒng)計數據庫安全性2021年9月18日 3 問題的提出問題的提出 數據庫的一大特點是數據庫的一大特點是數據可以共享數據可以共享 但數據共享必然帶來數據庫的安全性問題但數據共享必然帶來數據庫的安全性問題 數據庫系統(tǒng)中的數據共享不能是無條件的共享數據庫系統(tǒng)中的數據共享不能是無條件的共享例:軍事秘密、國家機密、新產品實驗數據、
2、市場需求分析、例:軍事秘密、國家機密、新產品實驗數據、市場需求分析、市場營銷策略、銷售計劃、客戶檔案、醫(yī)療檔案、銀行儲市場營銷策略、銷售計劃、客戶檔案、醫(yī)療檔案、銀行儲蓄數據蓄數據2021年9月18日 4什么是什么是數據庫的安全性數據庫的安全性 數據庫的安全性是指保護數據庫,防止因用戶非法使用數據庫的安全性是指保護數據庫,防止因用戶非法使用數據庫造成數據泄露、更改或破壞。數據庫造成數據泄露、更改或破壞。 數據庫系統(tǒng)的安全保護措施是否有效是數據庫系統(tǒng)主要數據庫系統(tǒng)的安全保護措施是否有效是數據庫系統(tǒng)主要的性能指標之一。的性能指標之一。2021年9月18日 54.1 4.1 計算機安全性概論計算機安
3、全性概論4.1.1 4.1.1 計算機系統(tǒng)的三類安全性問題計算機系統(tǒng)的三類安全性問題 什么是計算機系統(tǒng)安全性什么是計算機系統(tǒng)安全性 為計算機系統(tǒng)建立和采取的各種安全保護措施,以保護計為計算機系統(tǒng)建立和采取的各種安全保護措施,以保護計算機系統(tǒng)中的算機系統(tǒng)中的硬件硬件、軟件軟件及及數據數據,防止其因偶然或惡意的,防止其因偶然或惡意的原因使系統(tǒng)遭到破壞,數據遭到更改或泄露等。原因使系統(tǒng)遭到破壞,數據遭到更改或泄露等。2021年9月18日 6三類計算機系統(tǒng)安全性問題三類計算機系統(tǒng)安全性問題 技術安全類技術安全類 管理安全類管理安全類 政策法律類政策法律類2021年9月18日 7三類計算機系統(tǒng)安全性問題
4、三類計算機系統(tǒng)安全性問題技術安全類技術安全類管理安全類管理安全類政策法律類政策法律類技術安全:技術安全:指計算機系統(tǒng)中采指計算機系統(tǒng)中采用具有一定安全性的硬件、軟用具有一定安全性的硬件、軟件來實現對計算機系統(tǒng)及其所件來實現對計算機系統(tǒng)及其所存數據的安全保護,當計算機存數據的安全保護,當計算機系統(tǒng)受到無意或惡意的攻擊時系統(tǒng)受到無意或惡意的攻擊時仍能保證系統(tǒng)正常運行,保證仍能保證系統(tǒng)正常運行,保證系統(tǒng)內的數據不增加、不丟失、系統(tǒng)內的數據不增加、不丟失、不泄露。不泄露。2021年9月18日 8三類計算機系統(tǒng)安全性問題三類計算機系統(tǒng)安全性問題技術安全類技術安全類管理安全類管理安全類政策法律類政策法律類
5、管理安全:管理安全:管理不善導致的計算機設備和管理不善導致的計算機設備和數據介質的物理破壞、丟失等數據介質的物理破壞、丟失等軟硬件意外故障以及場地的意軟硬件意外故障以及場地的意外事故等安全問題。外事故等安全問題。2021年9月18日 9三類計算機系統(tǒng)安全性問題三類計算機系統(tǒng)安全性問題技術安全類技術安全類管理安全類管理安全類政策法律類政策法律類政策法律:政策法律:政府部門建立的有關計算機政府部門建立的有關計算機犯罪、數據安全保密的法律犯罪、數據安全保密的法律道德準則和政策法規(guī)、法令。道德準則和政策法規(guī)、法令。2021年9月18日 104.1 4.1 計算機安全性概論計算機安全性概論4.1.2 4
6、.1.2 安全標準簡介安全標準簡介為降低進而消除對系統(tǒng)的安全攻擊,各國引用或制定為降低進而消除對系統(tǒng)的安全攻擊,各國引用或制定了一系列安全標準了一系列安全標準 TCSEC (TCSEC (桔皮書桔皮書) ) CCCC2021年9月18日 1119851985年美國國防部(年美國國防部(DoDDoD)正式頒布正式頒布 DoDDoD可信計算機可信計算機系統(tǒng)評估標準系統(tǒng)評估標準(簡稱(簡稱TCSECTCSEC或或DoD85DoD85) TCSECTCSEC又稱桔皮書又稱桔皮書 TCSECTCSEC標準的目的標準的目的 提供一種標準,使提供一種標準,使用戶用戶可以對其計算機系統(tǒng)內敏感可以對其計算機系統(tǒng)
7、內敏感信息安全操作的信息安全操作的可信程度可信程度做做評估評估。 給計算機行業(yè)的給計算機行業(yè)的制造商制造商提供提供一種可循的一種可循的指導規(guī)則指導規(guī)則,使其產品能夠更好地滿足敏感應用的安全需求。使其產品能夠更好地滿足敏感應用的安全需求。2021年9月18日 12安全標準簡介安全標準簡介1985年年TCSEC1993年年FC1991年年ITSEC1993年年CTCPECCCV1.0 1996年年V2.0 1998年年V2.1 1999年年1999年年ISO154082021年9月18日 1319911991年年4 4月美國月美國NCSCNCSC(國家計算機安全中心)頒布了國家計算機安全中心)頒布
8、了可可信計算機系統(tǒng)評估標準關于可信數據庫系統(tǒng)的解釋信計算機系統(tǒng)評估標準關于可信數據庫系統(tǒng)的解釋( Trusted Database Interpretation Trusted Database Interpretation 簡稱簡稱TDITDI) TDITDI又稱紫皮書。它將又稱紫皮書。它將TCSECTCSEC擴展到數據庫管理系統(tǒng)。擴展到數據庫管理系統(tǒng)。 TDITDI中定義了數據庫管理系統(tǒng)的設計與實現中需滿足和中定義了數據庫管理系統(tǒng)的設計與實現中需滿足和用以進行安全性級別評估的標準。用以進行安全性級別評估的標準。2021年9月18日 14TDI/TCSECTDI/TCSEC標準的基本內容標準
9、的基本內容 TDITDI與與TCSECTCSEC一樣,從一樣,從四個方面四個方面來描述安全性級別來描述安全性級別劃分的指標劃分的指標 安全策略安全策略 責任責任 保證保證 文檔文檔2021年9月18日 15四組四組(division)(division)七個等級七個等級 D D C C(C1C1,C2C2) B B(B1B1,B2B2,B3B3) A A(A1A1)按系統(tǒng)可靠或可信程度逐漸增高按系統(tǒng)可靠或可信程度逐漸增高各安全級別之間具有一種偏序向下兼容的關系,即較各安全級別之間具有一種偏序向下兼容的關系,即較高安全性級別提供的安全保護要包含較低級別的所有高安全性級別提供的安全保護要包含較低級
10、別的所有保護要求,同時提供更多或更完善的保護能力。保護要求,同時提供更多或更完善的保護能力。2021年9月18日 16TCSEC/TDITCSEC/TDI安全級別劃分安全級別劃分( (七級七級) )安安 全全 級級 別別 定定 義義 A1驗證設計(驗證設計(Verified Design) B3安全域(安全域(Security Domains) B2結構化保護(結構化保護(Structural Protection) B1標記安全保護(標記安全保護(Labeled Security Protection) C2受控的存取保護受控的存取保護(Controlled Access Protectio
11、n) C1自主安全保護自主安全保護(Discretionary Security Protection) D最小保護(最小保護(Minimal Protection)2021年9月18日 172021年9月18日 18D D級級 將一切不符合更高標準的系統(tǒng)均歸于將一切不符合更高標準的系統(tǒng)均歸于D D組組 典型例子:典型例子:DOSDOS是安全標準為是安全標準為D D的操作系統(tǒng)的操作系統(tǒng) DOSDOS在安全性方面幾乎沒有什么專門的機制來保障在安全性方面幾乎沒有什么專門的機制來保障C1C1級級 非常初級的自主安全保護非常初級的自主安全保護 能夠實現對用戶和數據的分離,進行自主存取控制能夠實現對用戶
12、和數據的分離,進行自主存取控制(DACDAC),),保護或限制用戶權限的傳播。保護或限制用戶權限的傳播。2021年9月18日 19C2C2級級 安全產品的最低檔次安全產品的最低檔次 提供受控的存取保護,將提供受控的存取保護,將C1C1級的級的DACDAC進一步細化,以個人進一步細化,以個人身份注冊負責,并實施審計和資源隔離身份注冊負責,并實施審計和資源隔離 達到達到C2C2級的產品在其名稱中往往不突出級的產品在其名稱中往往不突出“安安全全”(Security)(Security)這一特色這一特色 典型例子典型例子 操作系統(tǒng)操作系統(tǒng) MicrosoftMicrosoft的的Windows 200
13、0Windows 2000, 數字設備公司的數字設備公司的Open VMS VAX 6.0Open VMS VAX 6.0和和6.16.1 數據庫數據庫 OracleOracle公司的公司的Oracle 7Oracle 7 SybaseSybase公司的公司的 SQL Server 11.0.6SQL Server 11.0.62021年9月18日 20B1B1級級 標記安全保護。標記安全保護?!鞍踩踩?Security)(Security)或或“可信可信的的”(Trusted)(Trusted)產品。產品。 對系統(tǒng)的數據加以標記,對標記的主體和客體實施強制存對系統(tǒng)的數據加以標記,對標記的
14、主體和客體實施強制存取控制(取控制(MACMAC)、)、審計等安全機制審計等安全機制 典型例子典型例子 操作系統(tǒng)操作系統(tǒng) 數字設備公司的數字設備公司的SEVMS VAX Version 6.0SEVMS VAX Version 6.0 惠普公司的惠普公司的HP-UX BLS release 9.0.9+ HP-UX BLS release 9.0.9+ 數據庫數據庫 OracleOracle公司的公司的Trusted Oracle 7Trusted Oracle 7 SybaseSybase公司的公司的Secure SQL Server version 11.0.6Secure SQL Ser
15、ver version 11.0.6 InformixInformix公司的公司的Incorporated INFORMIX-Incorporated INFORMIX-OnLineOnLine / / Secure 5.0Secure 5.02021年9月18日 21B2B2級級 結構化保護結構化保護 建立形式化的安全策略模型并對系統(tǒng)內的所有主體和客體建立形式化的安全策略模型并對系統(tǒng)內的所有主體和客體實施實施DACDAC和和MACMAC。 經過認證的經過認證的B2B2級以上的安全系統(tǒng)非常稀少級以上的安全系統(tǒng)非常稀少B3B3級級 安全域。安全域。 該級的該級的TCBTCB必須滿足訪問監(jiān)控器的要
16、求,審計跟蹤能力更必須滿足訪問監(jiān)控器的要求,審計跟蹤能力更強,并提供系統(tǒng)恢復過程。強,并提供系統(tǒng)恢復過程。A1A1級級 驗證設計,即提供驗證設計,即提供B3B3級保護的同時給出系統(tǒng)的形式化級保護的同時給出系統(tǒng)的形式化設計說明和驗證以確信各安全保護真正實現。設計說明和驗證以確信各安全保護真正實現。2021年9月18日 22內容回顧內容回顧以上簡單介紹了:以上簡單介紹了:三類計算機系統(tǒng)安全性問題三類計算機系統(tǒng)安全性問題安全標準安全標準2021年9月18日 23主要內容主要內容4.1 計算機安全性概論計算機安全性概論4.2 數據庫安全性控制數據庫安全性控制4.3 視圖機制視圖機制4.4 審計審計4.
17、5 數據加密數據加密4.6 統(tǒng)計數據庫安全性統(tǒng)計數據庫安全性2021年9月18日 24計算機系統(tǒng)中的安全模型計算機系統(tǒng)中的安全模型 用戶用戶DBMSOS DB 安全性控制層次安全性控制層次 方法:方法: 用戶標識用戶標識和鑒定和鑒定 數據庫安全保護數據庫安全保護存取控制存取控制視圖視圖審計審計操作系統(tǒng)操作系統(tǒng) 安全保護安全保護 密碼存儲密碼存儲 2021年9月18日 25數據庫安全性控制的常用方法數據庫安全性控制的常用方法 用戶標識和鑒定用戶標識和鑒定 存取控制存取控制 視圖視圖 審計審計 密碼存儲密碼存儲2021年9月18日 264.2 4.2 數據庫安全性控制數據庫安全性控制4.2.1 4
18、.2.1 用戶標識與鑒別用戶標識與鑒別用戶標識與鑒別(用戶標識與鑒別(Identification & AuthenticationIdentification & Authentication) 系統(tǒng)提供的最外層安全保護措施系統(tǒng)提供的最外層安全保護措施 基本方法基本方法 系統(tǒng)提供一定的方式讓用戶標識自己的名字或身份;系統(tǒng)提供一定的方式讓用戶標識自己的名字或身份; 系統(tǒng)內部記錄著所有合法用戶的標識;系統(tǒng)內部記錄著所有合法用戶的標識; 每次用戶要求進入系統(tǒng)時,由系統(tǒng)核對用戶提供的身份每次用戶要求進入系統(tǒng)時,由系統(tǒng)核對用戶提供的身份標識;標識; 通過鑒定后才提供機器使用權通過鑒定后才提供機器使用權
19、 DBMSDBMS進一步進行用戶標識和鑒定。進一步進行用戶標識和鑒定。 用戶標識和鑒定可以重復多次。用戶標識和鑒定可以重復多次。2021年9月18日 27SQL Server2005SQL Server2005的登錄號和數據庫用戶的登錄號和數據庫用戶 練習:練習: 登錄號:登錄服務器登錄號:登錄服務器 數據庫用戶:使用數據庫數據庫用戶:使用數據庫 在在Management StudioManagement Studio中執(zhí)行如下操作:中執(zhí)行如下操作: 創(chuàng)建登錄號:創(chuàng)建登錄號:U1U1、U2U2、U3U3、U7U7 使用使用U1U1登錄,執(zhí)行登錄,執(zhí)行use use stustu,看看能否成功?
20、,看看能否成功? 將將U1U1、U2U2、U3 U3 、U7U7設置為學生課程數據庫的用戶設置為學生課程數據庫的用戶 使用使用U1U1登錄,執(zhí)行登錄,執(zhí)行use use stustu,看看能否成功?,看看能否成功?2021年9月18日 28使用使用U1U1登錄登錄 在學生課程數據庫中執(zhí)行在學生課程數據庫中執(zhí)行 CREATE TABLE CREATE TABLE myStudentmyStudent ( ( SnoSno CHAR(9) PRIMARY KEY, CHAR(9) PRIMARY KEY, SnameSname CHAR(20) CHAR(20) ) ) 看看能否成功?看看能否成功
21、? 在學生課程數據庫中執(zhí)行在學生課程數據庫中執(zhí)行 select select * * from student from student 看看能否成功?看看能否成功?2021年9月18日 292021年9月18日 302021年9月18日 314.2 4.2 數據庫安全性控制數據庫安全性控制4.2.2 4.2.2 存取控制存取控制DBMSDBMS的存取控制機制的存取控制機制 存取控制機制的組成存取控制機制的組成 定義用戶存取定義用戶存取權限權限,并將用戶權限登記到數據字典中,并將用戶權限登記到數據字典中 合法權限檢查合法權限檢查用戶權限定義和合法權檢查機制一起組成了用戶權限定義和合法權檢查機制
22、一起組成了DBMSDBMS的安全的安全子系統(tǒng)子系統(tǒng)用戶對某一數據對象的操作權用戶對某一數據對象的操作權力稱為權限力稱為權限提供提供DCL來定義用戶權限來定義用戶權限存放在數據字典中存放在數據字典中2021年9月18日 32常用存取控制方法常用存取控制方法 自主存取控制自主存取控制(Discretionary Access Control Discretionary Access Control ,簡稱簡稱DACDAC) C2C2級級 靈活靈活 強制存取控制強制存取控制(Mandatory Access ControlMandatory Access Control,簡稱簡稱 MACMAC) B
23、1B1級級 嚴格嚴格同一用戶對于不同的數據對象有不同的同一用戶對于不同的數據對象有不同的存取權限存取權限不同的用戶對同一對象也有不同的權限不同的用戶對同一對象也有不同的權限用戶還可將其擁有的存取權限轉授給其用戶還可將其擁有的存取權限轉授給其他用戶他用戶每一個數據對象被標以一定的密級每一個數據對象被標以一定的密級每一個用戶也被授予某一個級別的許可證每一個用戶也被授予某一個級別的許可證對于任意一個對象,只有具有合法許可證的對于任意一個對象,只有具有合法許可證的用戶才可以存取用戶才可以存取2021年9月18日 33權限由權限由兩個要素兩個要素組成:數據對象和操作類型組成:數據對象和操作類型表表4.3
24、 關系數據庫系統(tǒng)中的存取權限關系數據庫系統(tǒng)中的存取權限4.2 4.2 數據庫安全性控制數據庫安全性控制4.2.3 4.2.3 自主存取控制方法自主存取控制方法 對象類型對象類型對象對象操操 作作 權權 限限 數據庫數據庫模式模式基本表基本表CREATE SCHEMACREATE SCHEMACREATE TABLE,ALTER TABLECREATE TABLE,ALTER TABLE 模式模式視圖視圖索引索引CREATE VIEWCREATE VIEWCREATE INDEXCREATE INDEX 數據數據基本表和視圖基本表和視圖SELECT,INSERT,UPDATESELECT,INS
25、ERT,UPDATE,DELETEDELETE,REFERENCES,ALL PRIVIEGESREFERENCES,ALL PRIVIEGES 數據數據屬性列屬性列SELECT,INSERT,UPDATESELECT,INSERT,UPDATE, REFERENCES, REFERENCES, ALL PRIVIEGESALL PRIVIEGES2021年9月18日 344.2 4.2 數據庫安全性控制數據庫安全性控制4.2.4 4.2.4 授權與回收授權與回收誰定義?誰定義? DBADBA 數據庫對象創(chuàng)建者(即屬主)數據庫對象創(chuàng)建者(即屬主) 已擁有該權限并且有轉授能力的用戶已擁有該權限并
26、且有轉授能力的用戶如何定義?如何定義? SQLSQL語句:語句: GRANTGRANT:授予對數據的操作權限:授予對數據的操作權限 REVOKEREVOKE:收回對數據的操作權限:收回對數據的操作權限2021年9月18日 35一、一、 授授 權:權:GRANTGRANTGRANTGRANT語句的一般格式:語句的一般格式: GRANT GRANT ,. . ONON TOTO ,. WITH GRANT OPTION; WITH GRANT OPTION;GRANTGRANT功能:將對指定操作對象的指定操作權限功能:將對指定操作對象的指定操作權限授予指定的用戶授予指定的用戶。2021年9月18日
27、 36例例1 1 把查詢把查詢StudentStudent表權限授給用戶表權限授給用戶U1U1 GRANT SELECT GRANT SELECT ON TABLE Student ON TABLE Student TO U1; TO U1;說明:說明:在在SQL Server 2005中沒有中沒有TABLE保留字!保留字!以以sa登錄或選擇登錄或選擇Windows身份驗證執(zhí)行授權。身份驗證執(zhí)行授權。執(zhí)行授權后,再使用執(zhí)行授權后,再使用U1登錄,執(zhí)行登錄,執(zhí)行 select * from student 看看能否成功?看看能否成功?2021年9月18日 37例例2 2 把對把對StudentS
28、tudent表和表和CourseCourse表的全部權限授予用戶表的全部權限授予用戶U2U2和和U3U3 GRANT GRANT ALL PRIVILEGESALL PRIVILEGES ON TABLE ON TABLE Student, CourseStudent, Course TO TO U2, U3U2, U3; ;說明:說明: 在在SQL Server 2005SQL Server 2005中中ONON后面只能出現一個對象,例如只后面只能出現一個對象,例如只出現出現StudentStudent 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行授權。身份驗證執(zhí)
29、行授權。 右擊右擊StudentStudent表,選擇屬性,然后,在左側選擇表,選擇屬性,然后,在左側選擇“權限權限”,在右側查看,在右側查看U2U2、U3U3獲得的權限獲得的權限2021年9月18日 38例例3 3 把對表把對表SCSC的查詢權限授予所有用戶的查詢權限授予所有用戶 GRANT SELECT GRANT SELECT ON TABLE SC ON TABLE SC TO TO PUBLICPUBLIC; ;說明:說明: 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行授權。身份驗證執(zhí)行授權。 右擊右擊SCSC表,選擇屬性,然后,在左側選擇表,選擇屬性,然
30、后,在左側選擇“權限權限”,在右,在右側查看側查看PUBLICPUBLIC獲得的權限獲得的權限 PUBLICPUBLIC是一個角色,是一個角色,U1U1、U2U2、U3U3都屬于這個角色,所以可都屬于這個角色,所以可以獲得角色所擁有的權限以獲得角色所擁有的權限2021年9月18日 39例例4 4 把查詢把查詢StudentStudent表和修改學生學號的權限授給用表和修改學生學號的權限授給用戶戶U4U4 GRANT GRANT UPDATE(UPDATE(SnoSno),SELECT),SELECT ON TABLE Student ON TABLE Student TO U4;TO U4;說
31、明:說明: 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行授權。身份驗證執(zhí)行授權。 右擊右擊StudentStudent表,選擇屬性,然后,在左側選擇表,選擇屬性,然后,在左側選擇“權限權限”,在右側查看,在右側查看U4U4獲得的權限。選中獲得的權限。選中“Update”Update”權限,進權限,進一步查看一步查看“列權限列權限”。2021年9月18日 40 例例5 5 把對表把對表SCSC的的INSERTINSERT權限授予權限授予U5U5用戶,并允許他用戶,并允許他再將此權限授予其他用戶再將此權限授予其他用戶 GRANT INSERT GRANT INSERT
32、ON TABLE SC ON TABLE SC TO U5 TO U5 WITH GRANT OPTIONWITH GRANT OPTION; ;說明:說明: 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行授權。身份驗證執(zhí)行授權。 右擊右擊SCSC表,選擇屬性,然后,在左側選擇表,選擇屬性,然后,在左側選擇“權限權限”,在右,在右側查看側查看U5U5獲得的權限獲得的權限, ,注意注意“具有授予權限具有授予權限”為選中狀態(tài)為選中狀態(tài)。2021年9月18日 41 執(zhí)行例執(zhí)行例5 5后,后,U5U5不僅擁有了對表不僅擁有了對表SCSC的的INSERTINSERT權限,還可權
33、限,還可以傳播此權限以傳播此權限: 以以U5U5登錄執(zhí)行以下授權:登錄執(zhí)行以下授權: GRANT INSERT GRANT INSERT ON TABLE SC ON TABLE SC TO U6 TO U6 WITH GRANT OPTION;WITH GRANT OPTION;同樣,同樣,U6還可以將此權限授予還可以將此權限授予U7:以以U6登錄執(zhí)行以下授權:登錄執(zhí)行以下授權: GRANT INSERT ON TABLE SC TO U7; 但但U7不能再傳播此權限。不能再傳播此權限??偨Y:總結:U5U6U72021年9月18日 42WITH GRANT OPTIONWITH GRANT
34、OPTION:指定了指定了WITH GRANT OPTIONWITH GRANT OPTION子句子句: : 獲得某種權限的用戶還可以把這種權限再授予別的用戶。獲得某種權限的用戶還可以把這種權限再授予別的用戶。沒有指定沒有指定WITH GRANT OPTIONWITH GRANT OPTION子句子句: : 獲得某種權限的用戶只能使用該權限,不能傳播該權限。獲得某種權限的用戶只能使用該權限,不能傳播該權限。2021年9月18日 43二、二、 收回收回授予的權限可以由授予的權限可以由DBADBA或其他授權者收回或其他授權者收回用用REVOKEREVOKE語句收回權限語句收回權限2021年9月18
35、日 44REVOKEREVOKE語句的一般格式為:語句的一般格式為: REVOKEREVOKE ,. . ONON FROMFROM ,.;.;功能:從指定用戶那里收回對指定對象的指定權限功能:從指定用戶那里收回對指定對象的指定權限2021年9月18日 45例例8 8 把用戶把用戶U4U4修改學生學號的權限收回修改學生學號的權限收回REVOKE UPDATE(REVOKE UPDATE(SnoSno) )ON TABLE Student ON TABLE Student FROM U4;FROM U4;說明:說明: 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行。身份
36、驗證執(zhí)行。2021年9月18日 46例例9 9 收回所有用戶對表收回所有用戶對表SCSC的查詢權限的查詢權限REVOKE SELECT REVOKE SELECT ON TABLE SC ON TABLE SC FROM FROM PUBLICPUBLIC; ;說明:說明: 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行。身份驗證執(zhí)行。 2021年9月18日 47例例10 10 把用戶把用戶U5U5對對SCSC表的表的INSERTINSERT權限收回權限收回REVOKE INSERT REVOKE INSERT ON SC ON SC FROM U5 FROM U5
37、CASCADECASCADE; ;說明:說明: 以以sasa登錄或選擇登錄或選擇WindowsWindows身份驗證執(zhí)行。身份驗證執(zhí)行。 系統(tǒng)將收回直接或間接從系統(tǒng)將收回直接或間接從U5U5處獲得的對處獲得的對SCSC表的表的INSERTINSERT權限權限2021年9月18日 48總結:總結:DBA DBA 擁有對數據庫中所有對象的所有權限,并可以根據實擁有對數據庫中所有對象的所有權限,并可以根據實際情況將不同的權限授予不同的用戶。際情況將不同的權限授予不同的用戶。用戶對自己建立的基本表和視圖擁有全部的操作權限,并用戶對自己建立的基本表和視圖擁有全部的操作權限,并且可以用且可以用GRANTG
38、RANT語句把其中某些權限授予其他用戶。語句把其中某些權限授予其他用戶。如果被授權的用戶有如果被授權的用戶有“傳播權限傳播權限”的許可,還可以把獲得的許可,還可以把獲得的權限再授予其他用戶的權限再授予其他用戶所有授予出去的權力在必要時又都可以用所有授予出去的權力在必要時又都可以用REVOKEREVOKE語句收回。語句收回。2021年9月18日 49SQL Server2005SQL Server2005可視化授予和回收權限可視化授予和回收權限從對象角度從對象角度從用戶角度從用戶角度2021年9月18日 50三、三、 創(chuàng)建數據庫模式的權限創(chuàng)建數據庫模式的權限CREATE USER CREATE
39、USER WITH DBA | RESOURCE | CONNECT;WITH DBA | RESOURCE | CONNECT;說明:說明:SQL Server2005SQL Server2005不完全支持該語法;不完全支持該語法;2021年9月18日 51SQL Server2005SQL Server2005創(chuàng)建數據庫模式的權限:創(chuàng)建數據庫模式的權限:USE STUUSE STUGRANT CONTROL ON GRANT CONTROL ON SCHEMA:dboSCHEMA:dbo TO U1 TO U1GRANT CREATE TABLE TO U1GRANT CREATE TAB
40、LE TO U1說明:可以通過可視化操作完成以上授權:說明:可以通過可視化操作完成以上授權: 右擊架構右擊架構“dbodbo”,選擇屬性,在左邊選擇,選擇屬性,在左邊選擇“權限權限”,右邊進行設置右邊進行設置 右擊數據庫右擊數據庫“stustu”,選擇屬性,在左邊選擇,選擇屬性,在左邊選擇“權限權限”,右邊進行設置右邊進行設置2021年9月18日 524.2 4.2 數據庫安全性控制數據庫安全性控制4.2.5 4.2.5 數據庫角色數據庫角色數據庫角色是被命名的一組與數據庫操作相關的權限,數據庫角色是被命名的一組與數據庫操作相關的權限,角色是權限的集合。角色是權限的集合。可以為一組具有相同權限
41、的用戶創(chuàng)建一個角色。可以為一組具有相同權限的用戶創(chuàng)建一個角色。簡化授權的過程。簡化授權的過程。SQL Server2005SQL Server2005中系統(tǒng)定義的數據庫角色。中系統(tǒng)定義的數據庫角色。2021年9月18日 532021年9月18日 54數據庫角色數據庫角色 創(chuàng)建角色創(chuàng)建角色CREATE ROLECREATE ROLE 說明:說明: 剛創(chuàng)建的角色是空的,沒有任何內容。剛創(chuàng)建的角色是空的,沒有任何內容。 可以用可以用GRANTGRANT為為角色授權角色授權2021年9月18日 55數據庫角色數據庫角色 給角色授權給角色授權GRANT GRANT ,ON ON 對象名對象名TOTO ,
42、2021年9月18日 56數據庫角色數據庫角色 角色權限的收回角色權限的收回 REVOKE REVOKE ,. . ON ON FROMFROM ,.;.;2021年9月18日 57數據庫角色數據庫角色 將角色授予用戶將角色授予用戶GRANT GRANT ,2TO TO ,1 WITH ADMIN OPTIONWITH ADMIN OPTION 2021年9月18日 58應用數據庫角色應用數據庫角色例例11 通過角色來實現將一組權限授予一個用戶。通過角色來實現將一組權限授予一個用戶。n首先首先,創(chuàng)建角色創(chuàng)建角色R1:CREATE ROLE R1;/*SQL Server2005中也可以執(zhí)行存儲
43、過程:中也可以執(zhí)行存儲過程:EXEC sp_addrole r1*/說明:在對象資源管理器中,右擊說明:在對象資源管理器中,右擊 “R1”,選擇,選擇“屬性屬性”在左側選擇在左側選擇“常規(guī)常規(guī)”,在右側查看,在右側查看“角色成員角色成員”,目前沒有成員,目前沒有成員在左側選擇在左側選擇“安全對象安全對象”,在右側,在右側 查看查看“安全對象安全對象”,單擊,單擊“添加添加”,選擇,選擇“屬于該架構的所有對象屬于該架構的所有對象”,從下拉列表中選擇,從下拉列表中選擇“dbo”,單擊,單擊“確定確定”,觀察角色擁有的對象權限,目前沒有,觀察角色擁有的對象權限,目前沒有2021年9月18日 59應用
44、數據庫角色(續(xù))應用數據庫角色(續(xù))其次,授予角色其次,授予角色R1一定的權限:一定的權限:GRANT SELECT,UPDATE,INSERTON TABLE StudentTO R1;說明:在對象資源管理器中,右擊說明:在對象資源管理器中,右擊 “R1”,選擇,選擇“屬性屬性”在左側選擇在左側選擇“安全對象安全對象”,在右側,在右側 查看查看“安全對象安全對象”,單,單擊擊“添加添加”,選擇,選擇“屬于該架構的所有對象屬于該架構的所有對象”,從下拉列表,從下拉列表中選擇中選擇“dbo”,單擊,單擊“確定確定”,選擇,選擇“Student”表,觀察角表,觀察角色擁有的對象權限色擁有的對象權限
45、2021年9月18日 60應用數據庫角色(續(xù))應用數據庫角色(續(xù))接下來,將角色授予用戶接下來,將角色授予用戶U5、 U6、 U7GRANT R1 TO U5, U6,U7 ;說明:說明:SQL Server2005中使用系統(tǒng)存儲過程完成對應操作:中使用系統(tǒng)存儲過程完成對應操作:EXEC sp_addrolemember NR1, NU5EXEC sp_addrolemember NR1, NU6 EXEC sp_addrolemember NR1, NU7查看角色成員查看角色成員查看數據庫用戶查看數據庫用戶U6的的“安全對象安全對象”使用使用U6連接數據庫服務器,執(zhí)行連接數據庫服務器,執(zhí)行S
46、elect * From student2021年9月18日 61應用數據庫角色(續(xù))應用數據庫角色(續(xù))最后,從最后,從U6收回角色收回角色R1REVOKE R1 FROM U6; 說明:說明:SQL Server2005中使用系統(tǒng)存儲過程完成對應操作中使用系統(tǒng)存儲過程完成對應操作:EXEC sp_droprolemember NR1, NU6查看角色成員查看角色成員查看數據庫用戶查看數據庫用戶U6的的“安全對象安全對象”使用使用U6連接數據庫服務器,執(zhí)行連接數據庫服務器,執(zhí)行Select * From student2021年9月18日 62SQL Server2005SQL Server
47、2005的角色的角色服務器角色服務器角色固定服務器角色,不能添加、刪除或修改權限固定服務器角色,不能添加、刪除或修改權限數據庫角色數據庫角色固定數據庫角色,不能刪除或修改權限固定數據庫角色,不能刪除或修改權限用戶自定義的角色用戶自定義的角色Management StudioManagement Studio查看并管理角色成員查看并管理角色成員思考:一般情況下,思考:一般情況下, Management StudioManagement Studio可以做任可以做任何操作,從安全性角度分析其原因?何操作,從安全性角度分析其原因?2021年9月18日 632021年9月18日 64SQL Serve
48、r2005SQL Server2005的安全性總結:的安全性總結:對于一個登錄號:對于一個登錄號:賦予一定的服務器角色,實現對數據庫服務器的相關管理賦予一定的服務器角色,實現對數據庫服務器的相關管理工作工作對于一個數據庫用戶對于一個數據庫用戶賦予一定的數據庫角色,實現對數據庫的管理和數據庫模賦予一定的數據庫角色,實現對數據庫的管理和數據庫模式的操作能力式的操作能力賦予對對象的一定的存取權限賦予對對象的一定的存取權限2021年9月18日 65內容回顧內容回顧以上詳細講解了:以上詳細講解了:n數據庫安全控制方法數據庫安全控制方法n授權與回收授權與回收n數據庫角色數據庫角色2021年9月18日 66
49、主要內容主要內容4.1 計算機安全性概論計算機安全性概論4.2 數據庫安全性控制數據庫安全性控制4.3 視圖機制視圖機制4.4 審計審計4.5 數據加密數據加密4.6 統(tǒng)計數據庫安全性統(tǒng)計數據庫安全性2021年9月18日 674.3 4.3 視圖機制視圖機制視圖機制把要保密的數據對無權存取這些數據的用戶隱藏起來視圖機制把要保密的數據對無權存取這些數據的用戶隱藏起來視圖機制更主要的功能在于提供數據獨立性,其安全保護功能視圖機制更主要的功能在于提供數據獨立性,其安全保護功能太不精細,往往遠不能達到應用系統(tǒng)的要求。太不精細,往往遠不能達到應用系統(tǒng)的要求。視圖機制與授權機制配合使用視圖機制與授權機制配
50、合使用: : 首先用視圖機制屏蔽掉一部分保密數據首先用視圖機制屏蔽掉一部分保密數據 視圖上面再進一步定義存取權限,間接實現了支持存取謂詞的用戶視圖上面再進一步定義存取權限,間接實現了支持存取謂詞的用戶權限定義權限定義 例如,例如,P145P1452021年9月18日 684.4 4.4 審計審計什么是審計什么是審計 啟用一個專用的審計日志(啟用一個專用的審計日志(Audit LogAudit Log)將用戶對數據庫的)將用戶對數據庫的所有操作記錄在上面所有操作記錄在上面 DBADBA可以利用審計日志中的追蹤信息找出非法存取數據的人可以利用審計日志中的追蹤信息找出非法存取數據的人 C2C2以上安
51、全級別的以上安全級別的DBMSDBMS必須具有審計功能必須具有審計功能 分為用戶級審計和系統(tǒng)級審計分為用戶級審計和系統(tǒng)級審計 審計很費時間和空間,審計很費時間和空間,DBADBA可以根據應用對安全性的要求,可以根據應用對安全性的要求,靈活地打開或關閉審計功能。靈活地打開或關閉審計功能。2021年9月18日 69SQL Server2005SQL Server2005的審計功能:的審計功能:在對象資源管理器中,右擊服務器在對象資源管理器中,右擊服務器 “WIN2K3”“WIN2K3”,選擇,選擇“屬屬性性”,在左側選擇,在左側選擇“安全性安全性”,在右側選中,在右側選中“啟用啟用C2C2審核審核
52、跟蹤跟蹤”,重新啟動服務器,重新啟動服務器C2 C2 審核模式數據保存在默認實例的審核模式數據保存在默認實例的 MSSQLData MSSQLData 目錄中目錄中的某個文件內的某個文件內使用使用sasa連接服務器,并執(zhí)行連接服務器,并執(zhí)行select select * * from student from student;打開;打開C2 C2 審核模式數據,查看審計日志審核模式數據,查看審計日志關閉關閉C2C2審核功能,重新啟動服務器;使用審核功能,重新啟動服務器;使用sasa連接服務器,連接服務器,并執(zhí)行并執(zhí)行select select * * from sc from sc;打開;打開
53、C2 C2 審核模式數據,查看審審核模式數據,查看審計日志計日志搜索搜索“C2C2審核審核”,查看更多詳細信息,查看更多詳細信息2021年9月18日 704.5 4.5 數據加密數據加密數據加密數據加密 防止數據庫中數據在存儲和傳輸中失密的有效手段防止數據庫中數據在存儲和傳輸中失密的有效手段加密的基本思想加密的基本思想 根據一定的算法將原始數據(術語為明文,根據一定的算法將原始數據(術語為明文,Plain textPlain text)變換為不可直接識別的格式(術語為密文,變換為不可直接識別的格式(術語為密文,Cipher Cipher texttext) 不知道解密算法的人無法獲知數據的內容
54、不知道解密算法的人無法獲知數據的內容2021年9月18日 71DBMSDBMS中的數據加密中的數據加密 有些數據庫產品提供了數據加密例行程序有些數據庫產品提供了數據加密例行程序 有些數據庫產品本身未提供加密程序,但提供了接口有些數據庫產品本身未提供加密程序,但提供了接口 數據加密功能通常也作為可選特征,允許用戶自由選擇數據加密功能通常也作為可選特征,允許用戶自由選擇 數據加密與解密是比較費時的操作數據加密與解密是比較費時的操作 數據加密與解密程序會占用大量系統(tǒng)資源數據加密與解密程序會占用大量系統(tǒng)資源 應該只對高度機密的數據加密應該只對高度機密的數據加密2021年9月18日 724.6 4.6
55、統(tǒng)計數據庫安全性統(tǒng)計數據庫安全性統(tǒng)計數據庫的統(tǒng)計數據庫的特點特點 允許用戶查詢允許用戶查詢聚集聚集類型的信息(例如合計、平均值等)類型的信息(例如合計、平均值等) 不允許查詢不允許查詢單個單個記錄信息記錄信息統(tǒng)計數據庫中特殊的統(tǒng)計數據庫中特殊的安全性問題安全性問題 隱蔽的信息通道隱蔽的信息通道 從合法的查詢中推導出不合法的信息從合法的查詢中推導出不合法的信息2021年9月18日 73例例1 1:下面兩個查詢都是合法的:下面兩個查詢都是合法的: 1 1本公司共有多少女高級程序員?本公司共有多少女高級程序員? 2 2本公司女高級程序員的工資總額是多少?本公司女高級程序員的工資總額是多少?如果第一個
56、查詢的結果是如果第一個查詢的結果是“1”1”,那么第二個查詢的結果顯然就是這個程序員的工資數。那么第二個查詢的結果顯然就是這個程序員的工資數。規(guī)則規(guī)則1 1:任何查詢至少要涉及:任何查詢至少要涉及N(NN(N足夠大足夠大) )個以上的記錄個以上的記錄2021年9月18日 74內容回顧內容回顧本章講解了:本章講解了:n計算機安全性概論計算機安全性概論n數據庫安全控制數據庫安全控制n視圖機制視圖機制n審計審計n數據加密數據加密n統(tǒng)計數據庫安全性統(tǒng)計數據庫安全性2021年9月18日 75作業(yè):作業(yè):實驗:實驗: 教材以及講義中的例題教材以及講義中的例題 實驗實驗16 16 數據庫安全性數據庫安全性2021年9月18日 76
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。