第6章 數(shù)據(jù)庫(kù)的安全技術(shù).ppt_第1頁(yè)
第6章 數(shù)據(jù)庫(kù)的安全技術(shù).ppt_第2頁(yè)
第6章 數(shù)據(jù)庫(kù)的安全技術(shù).ppt_第3頁(yè)
第6章 數(shù)據(jù)庫(kù)的安全技術(shù).ppt_第4頁(yè)
第6章 數(shù)據(jù)庫(kù)的安全技術(shù).ppt_第5頁(yè)
已閱讀5頁(yè),還剩52頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、信息系統(tǒng)安全 電 子 教 程 信息管理教研室 張 勇 E-mail: Http:/,第六章 數(shù)據(jù)庫(kù)安全技術(shù),信息系統(tǒng)安全,本章主要內(nèi)容,6.1 數(shù)據(jù)庫(kù)系統(tǒng)的組成 6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性概述 6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù) 6.4 數(shù)據(jù)庫(kù)的備份與恢復(fù) 6.5 SQL Server的安全管理與策略 6.6 應(yīng)用示例:數(shù)據(jù)庫(kù)加密系統(tǒng),本章學(xué)習(xí)要點(diǎn),本章介紹數(shù)據(jù)庫(kù)系統(tǒng)的組成、安全性要求、安全特性;數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù);數(shù)據(jù)庫(kù)的備份與恢復(fù);數(shù)據(jù)庫(kù)系統(tǒng)的安全保護(hù)實(shí)例。 通過(guò)本章的學(xué)習(xí),應(yīng)掌握以下內(nèi)容: (1)理解數(shù)據(jù)庫(kù)系統(tǒng)的安全性要求、面臨安全威脅的類型、基本安全架構(gòu)和安全特性; (2)了解數(shù)據(jù)庫(kù)安全控制模型;掌

2、握數(shù)據(jù)庫(kù)的備份與恢復(fù)方法; (3)理解數(shù)據(jù)庫(kù)系統(tǒng)安全保護(hù)應(yīng)用; (4)掌握SQL Server 2000數(shù)據(jù)庫(kù)的安全保護(hù)方法、策略。,6.1 數(shù)據(jù)庫(kù)系統(tǒng)的組成,數(shù)據(jù)庫(kù)系統(tǒng)是由兩部分組成: 一部分是數(shù)據(jù)庫(kù),按一定的方式存取數(shù)據(jù); 一部分是數(shù)據(jù)庫(kù)管理系統(tǒng),為用戶及應(yīng)用程序提供數(shù)據(jù)訪問(wèn),并具有對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理、維護(hù)等多種功能。 數(shù)據(jù)庫(kù)組織形式的數(shù)據(jù)特征: 具有共享性、獨(dú)立性、一致性、完整性和訪問(wèn)控制性 。,1.數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)是若干數(shù)據(jù)的集合體。這些數(shù)據(jù)以一定的序列存在于計(jì)算機(jī)的外存儲(chǔ)器上。 2.數(shù)據(jù)庫(kù)管理系統(tǒng) 數(shù)據(jù)庫(kù)管理系統(tǒng) ( DBMS-Database Management System)是專門(mén)

3、負(fù)責(zé)數(shù)據(jù)庫(kù)管理和維護(hù)的計(jì)算機(jī)軟件系統(tǒng)。它是數(shù)據(jù)庫(kù)系統(tǒng)的核心,對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的功能和性能有著決定性影響,DBMS即負(fù)責(zé)數(shù)據(jù)庫(kù)的維護(hù)工作,又要按數(shù)據(jù)庫(kù)管理員的要求保證數(shù)據(jù)庫(kù)的安全性和完整性。,6.1 數(shù)據(jù)庫(kù)系統(tǒng)的組成,3.數(shù)據(jù)庫(kù)特性 多用戶 高可用性 頻繁的更新 大文件 安全性與可靠性問(wèn)題復(fù)雜 很多數(shù)據(jù)庫(kù)應(yīng)用于客戶機(jī)服務(wù)器(ClientServer)平臺(tái)。在Server端,數(shù)據(jù)庫(kù)由Server上的DBMS進(jìn)行管理。由于ClientServer結(jié)構(gòu)允許服務(wù)器有多個(gè)客戶端,各個(gè)終端對(duì)于數(shù)據(jù)的完整性和一致性要求很高,這就涉及到數(shù)據(jù)庫(kù)的安全性與可靠性問(wèn)題。,6.1 數(shù)據(jù)庫(kù)系統(tǒng)的組成,6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性

4、概述,數(shù)據(jù)庫(kù)的完整性 元素的完整性 可審計(jì)性 訪問(wèn)控制 用戶認(rèn)證 可用性 數(shù)據(jù)庫(kù)系統(tǒng)的基本安全要求是一些基本性的問(wèn)題,如訪問(wèn)控制,偽裝數(shù)據(jù)的排除、用戶的認(rèn)證和可靠性。表 61列出數(shù)據(jù)庫(kù)系統(tǒng)對(duì)安全性的要求。,6.2.1 數(shù)據(jù)庫(kù)系統(tǒng)的安全性要求,表 61 數(shù)據(jù)庫(kù)系統(tǒng)對(duì)安全性的要求,6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性概述,1.系統(tǒng)運(yùn)行安全 系統(tǒng)運(yùn)行安全包括:法律、政策的保護(hù),如用戶是否有合法權(quán)利,政策是否允許等;物理控制安全,如機(jī)房加鎖等;硬件運(yùn)行安全;操作系統(tǒng)安全,如數(shù)據(jù)文件是否保護(hù)等;災(zāi)害、故障恢復(fù);死鎖的避免和解除;電磁信息泄漏防止。 2.系統(tǒng)信息安全 系統(tǒng)信息安全包括:用戶口令字鑒別;用戶存取權(quán)限控制

5、;數(shù)據(jù)存取權(quán)限、方式控制;審計(jì)跟蹤;數(shù)據(jù)加密。,6.2.2 數(shù)據(jù)庫(kù)系統(tǒng)的安全的含義,6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性概述,事務(wù)內(nèi)部的故障 系統(tǒng)范圍內(nèi)的故障 介質(zhì)故障 計(jì)算機(jī)病毒與黑客 其中,數(shù)據(jù)庫(kù)系統(tǒng)故障又稱為數(shù)據(jù)庫(kù)軟故障,是指系統(tǒng)突然停止運(yùn)行時(shí)造成的數(shù)據(jù)庫(kù)故障。如CPU故障、突然斷電,操作系統(tǒng)故障。 介質(zhì)故障又稱數(shù)據(jù)庫(kù)硬故障,主要指外存故障,如磁盤(pán)磁頭碰撞,瞬時(shí)的強(qiáng)磁場(chǎng)干擾等。,6.2.3 數(shù)據(jù)庫(kù)的故障類型,6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性概述,1.用戶分類 不同類型的用戶授予不同的數(shù)據(jù)管理權(quán)限。一般將權(quán)限分為三類:數(shù)據(jù)庫(kù)登錄權(quán)限類、資源管理權(quán)限類和數(shù)據(jù)庫(kù)管理員權(quán)限類。 2.數(shù)據(jù)分類 DBMS提供了將數(shù)據(jù)分

6、類的功能,即建立視圖。 3.審計(jì)功能 大型DBMS提供的審計(jì)功能是一個(gè)十分重要的安全措施 ,有兩種方式的審計(jì),即用戶審計(jì)和系統(tǒng)審計(jì)。,6.2.4 數(shù)據(jù)庫(kù)系統(tǒng)的基本安全架構(gòu),6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性概述,數(shù)據(jù)獨(dú)立性 數(shù)據(jù)安全性 數(shù)據(jù)的完整性 并發(fā)控制 故障恢復(fù) 數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)獨(dú)立性分為物理獨(dú)立性和邏輯獨(dú)立性;數(shù)據(jù)完整性包括數(shù)據(jù)的正確性、有效性和一致性。,6.2.5 數(shù)據(jù)庫(kù)系統(tǒng)的安全特性,6.2 數(shù)據(jù)庫(kù)系統(tǒng)安全性概述,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),一般計(jì)算機(jī)系統(tǒng)中,安全措施是分級(jí)和分層設(shè)置的,其數(shù)據(jù)庫(kù)安全控制模型如圖61所示。,6.3.1 數(shù)據(jù)庫(kù)的安全性,1.用戶標(biāo)識(shí)和鑒定 通過(guò)核對(duì)用戶的名字或身份

7、(ID),決定該用戶對(duì)系統(tǒng) 的使用權(quán)。數(shù)據(jù)庫(kù)系統(tǒng)不允許一個(gè)未經(jīng)授權(quán)的用戶對(duì)數(shù)據(jù) 庫(kù)進(jìn)行操作。 方法一:用戶用ID和口令登錄時(shí),系統(tǒng)用一張用戶口 令表去鑒別用戶ID。特點(diǎn)方法簡(jiǎn)便,但保密性不是很高。 方法二:標(biāo)識(shí)鑒定的方法。用戶先標(biāo)識(shí)自己與系統(tǒng)給 出一個(gè)隨機(jī)數(shù),按照某個(gè)特定的過(guò)程或函數(shù)進(jìn)行計(jì)算后給 出結(jié)果值,系統(tǒng)同樣按照這個(gè)過(guò)程或函數(shù)對(duì)隨機(jī)數(shù)進(jìn)行計(jì) 算,如果用戶輸入的相等則證明此用戶合法,可為用戶分 配權(quán)限。否則,是非合法用戶,拒絕進(jìn)入數(shù)據(jù)庫(kù)系統(tǒng)。,6.3.1 數(shù)據(jù)庫(kù)的安全性,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),2.存取控制 對(duì)于存取權(quán)限的定義稱為授權(quán)。這些定義經(jīng)過(guò)編譯后 存儲(chǔ)在數(shù)據(jù)字典中。每當(dāng)用戶發(fā)出數(shù)

8、據(jù)庫(kù)的操作請(qǐng)求后, DBMS查找數(shù)據(jù)字典,根據(jù)用戶權(quán)限進(jìn)行合法權(quán)檢查。若用 戶的操作請(qǐng)求超出了定義的權(quán)限,系統(tǒng)拒絕此操作。授權(quán) 編譯程序和合法權(quán)檢查機(jī)制一起組成安全性子系統(tǒng)。 數(shù)據(jù)庫(kù)系統(tǒng)中,不同的用戶對(duì)象有不同的操作權(quán)力。 對(duì)數(shù)據(jù)庫(kù)的操作權(quán)限一般包括查詢權(quán)、記錄的修改權(quán)、索 引的建立權(quán)、數(shù)據(jù)庫(kù)的創(chuàng)建權(quán)。把這些權(quán)力按一定的規(guī)則 授予用戶,以保證用戶的操作在自己的權(quán)限范圍之內(nèi)。,6.3.1 數(shù)據(jù)庫(kù)的安全性,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),3.數(shù)據(jù)分類 數(shù)據(jù)庫(kù)系統(tǒng)對(duì)安全性的處理是把數(shù)據(jù)分級(jí)。為每一數(shù) 據(jù)對(duì)象(文件,或字段等)賦予一定的保密級(jí)。 例如;絕密極、保密級(jí)、秘密級(jí)和公用級(jí)。對(duì)于用戶, 成類似的級(jí)別

9、。系統(tǒng)便可規(guī)定兩條規(guī)則: (1)用戶1只能查看比他級(jí)別低的或同級(jí)的數(shù)據(jù)。 (2)用戶1只能修改和他同級(jí)的數(shù)據(jù)。,6.3.1 數(shù)據(jù)庫(kù)的安全性,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),4.數(shù)據(jù)庫(kù)加密 (1)數(shù)據(jù)庫(kù)加密的特點(diǎn) 1)數(shù)據(jù)庫(kù)密碼系統(tǒng)采用公開(kāi)密鑰; 2)多級(jí)密鑰結(jié)構(gòu) ; 3)加密機(jī)制是既可加密又可解密的可逆過(guò)程 ; 4)加密算法適應(yīng)數(shù)據(jù)庫(kù)系統(tǒng)的特性。 (2)數(shù)據(jù)庫(kù)加密的范圍 1)索引字段不能加密 ; 2)關(guān)系運(yùn)算的比較字段不能加密 ; 3)表間的連接碼字段不能加密。,6.3.1 數(shù)據(jù)庫(kù)的安全性,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),4.數(shù)據(jù)庫(kù)加密 (3)數(shù)據(jù)庫(kù)加密對(duì)數(shù)據(jù)庫(kù)管理系統(tǒng)原有功能的影響 1)無(wú)法實(shí)現(xiàn)對(duì)數(shù)據(jù)制

10、約因素的定義 ; 2)失去密文數(shù)據(jù)的排序、分組和分類作用; 3)SQL語(yǔ)言中的內(nèi)部函數(shù)將對(duì)加密數(shù)據(jù)失去作用; 4)DBMS的一些應(yīng)用開(kāi)發(fā)工具的使用受到限制。,6.3.1 數(shù)據(jù)庫(kù)的安全性,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),數(shù)據(jù)的完整性指:防止數(shù)據(jù)庫(kù)中存在不符合語(yǔ)義的數(shù) 據(jù),防止錯(cuò)誤信息的輸入和輸出。 數(shù)據(jù)完整性包括:數(shù)據(jù)正確性、有效性和一致性。 數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)都必須滿足自己的完整性約束條 件,這些約束包括以下幾種: 1.數(shù)據(jù)類型與值域的約束(字符型、整型、實(shí)型 ); 2.關(guān)鍵字約束(主關(guān)鍵字、外關(guān)鍵字約束 ); 3.數(shù)據(jù)聯(lián)系的約束(靜態(tài)約束與動(dòng)態(tài)約束如,年令更新舊值不能大于新值)。,6.3.2 數(shù)據(jù)

11、庫(kù)中數(shù)據(jù)的完整性,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),并發(fā)控制的概念 大型多用戶數(shù)據(jù)庫(kù)中的數(shù)據(jù)資源必須是共享的,為了 充分利用數(shù)據(jù)庫(kù)資源,應(yīng)允許多個(gè)用戶并行操作的數(shù)據(jù)庫(kù)。 數(shù)據(jù)庫(kù)對(duì)這種并行操作進(jìn)行的控制即并發(fā)控制。 并發(fā)控制方法 并發(fā)控制的主要方法是封鎖技術(shù)(Locking )。當(dāng)事 務(wù)1修改數(shù)據(jù)時(shí),將數(shù)據(jù)封鎖,這樣事務(wù)1讀取和修改數(shù)據(jù) 時(shí),其他事務(wù)不能對(duì)數(shù)據(jù)進(jìn)行讀取和修改,直到事務(wù)1解 除封鎖。,6.3.3 數(shù)據(jù)庫(kù)并發(fā)控制,6.3 數(shù)據(jù)庫(kù)的數(shù)據(jù)保護(hù),6.4 數(shù)據(jù)庫(kù)的備份與恢復(fù),數(shù)據(jù)庫(kù)的備份大致有三種類型 1.冷備份:冷備份是在沒(méi)有最終用戶訪問(wèn)它的情況下關(guān)閉 數(shù)據(jù)庫(kù),并將其備份,這是保持?jǐn)?shù)據(jù)完整性的最好

12、辦法。 2.熱備份:熱備份是在數(shù)據(jù)庫(kù)正在被寫(xiě)入的數(shù)據(jù)更新時(shí)進(jìn) 行,日志文件將需要作更新或更改的業(yè)務(wù)指令“堆起來(lái)”, 而不真正將任何數(shù)據(jù)值寫(xiě)入數(shù)據(jù)庫(kù)記錄。 3.邏輯備份:邏輯備份使用軟件技術(shù)從數(shù)據(jù)庫(kù)提取數(shù)據(jù)并 將結(jié)果寫(xiě)入一個(gè)輸出文件。,6.4.1 數(shù)據(jù)庫(kù)的備份,數(shù)據(jù)庫(kù)的恢復(fù)技術(shù)有如下2種: (1)單純以備份為基礎(chǔ)的恢復(fù)技術(shù); (2)以備份和日志為基礎(chǔ)的恢復(fù)技術(shù)。如圖6-2所示。,6.4.2 數(shù)據(jù)庫(kù)的恢復(fù),6.4 數(shù)據(jù)庫(kù)的備份與恢復(fù),6.5 SQL Server的安全管理與策略,1.SQL Server的安全體系 SQL Server的安全性是從下面三個(gè)層次來(lái)實(shí)現(xiàn)的: 第一層 數(shù)據(jù)庫(kù)安全管理,包括

13、登錄和用戶授權(quán)、存儲(chǔ)過(guò)程管理等,確保對(duì)服務(wù)器的訪問(wèn)安全性 第二層是操作系統(tǒng)安全管理,包括檢測(cè)日志記錄、管理員帳號(hào)的管理等; 第三層是網(wǎng)絡(luò)安全管理,通過(guò)端口設(shè)置、防火墻技術(shù)等網(wǎng)絡(luò)技術(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)的安全性。,6.5.1 SQL Server的安全體系和安全認(rèn)證,SQL Server的安全體系如圖 63所示。,6.5 SQL Server的安全管理與策略,2. SQL Server的安全認(rèn)證 當(dāng)SQL Server在Windows環(huán)境中運(yùn)行時(shí),SQL Server 2000提供了下面兩種確認(rèn)用戶的認(rèn)證模式: (1)Windows認(rèn)證模式 Windows認(rèn)證模式利用Windows操作系統(tǒng)對(duì)于用戶登錄 和

14、用戶帳號(hào)管理的安全機(jī)制,允許SQL Server也可以使用 Windows的用戶名和口令。用戶只需要通過(guò)Windows的認(rèn) 證,就可以連接到SQL Server。,6.5.1 SQL Server的安全體系和安全認(rèn)證,6.5 SQL Server的安全管理與策略,(2)混合認(rèn)證模式 在混合認(rèn)證模式下,SQL Server系統(tǒng)可以采用 Windows認(rèn)證進(jìn)程或SQL Server認(rèn)證進(jìn)程。 當(dāng)連接服務(wù)器的用戶通過(guò)信任連接協(xié)議(NP和TCP/IP) 登錄系統(tǒng)時(shí),SQL Server采用Windows認(rèn)證進(jìn)程;當(dāng)用戶 連接服務(wù)器時(shí)采用非信任連接協(xié)議,數(shù)據(jù)庫(kù)系統(tǒng)就會(huì)采用 SQL Server認(rèn)證進(jìn)程。

15、,6.5.1 SQL Server的安全體系和安全認(rèn)證,6.5 SQL Server的安全管理與策略,安全管理是數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供的功能,其中包 含兩個(gè)層次: 一是用戶是否有權(quán)限登錄到系統(tǒng)及如何登錄的管理; 二是用戶能否使用數(shù)據(jù)庫(kù)中的對(duì)象并執(zhí)行相應(yīng)操作的管理。 SQL Server的安全管理主要包括以下四個(gè)方面: 數(shù)據(jù)庫(kù)登錄管理 數(shù)據(jù)庫(kù)用戶管理 數(shù)據(jù)庫(kù)角色管理 數(shù)據(jù)庫(kù)權(quán)限管理,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,1.數(shù)據(jù)庫(kù)登錄管理 用戶必須提供正確的登錄帳號(hào)才能訪問(wèn)SQL Server 系統(tǒng),這些帳號(hào)包括Windows登錄帳號(hào)和SQL

16、Server登錄 帳號(hào)。 SQL Server根據(jù)連接的數(shù)據(jù)庫(kù),授予用戶不同的訪 問(wèn)權(quán)限,并保留相同的密碼。用戶必須有服務(wù)器的登錄 或連接權(quán)限,SQL Server將密碼與登錄聯(lián)系,沒(méi)有登錄 到數(shù)據(jù)庫(kù)服務(wù)器的用戶,將不能訪問(wèn)服務(wù)器中的任何數(shù) 據(jù)庫(kù)。,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,對(duì)SQL Server數(shù)據(jù)庫(kù)登錄的管理有兩種方法: 1)企業(yè)管理器(SQL Server Enterprise Manager) 2)系統(tǒng)存貯過(guò)程sp 下面介紹利用系統(tǒng)存儲(chǔ)過(guò)程管理登錄。 (1)使用系統(tǒng)存儲(chǔ)過(guò)程sp_addlogin創(chuàng)建登錄帳號(hào) sp_addl

17、ogin存儲(chǔ)過(guò)程使用Transact SQL語(yǔ)句,語(yǔ)法如下: sp_addlogin loginname=登錄名,password=密碼,defaultdb=數(shù)據(jù)庫(kù),defaultlanguage=語(yǔ)言,sid=安全識(shí)別編號(hào),encryptopt=加密選項(xiàng),6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,例 61 創(chuàng)建一個(gè)登錄后連接DB1000數(shù)據(jù)庫(kù)、密碼為“good”的用戶“song”,并指定SID。 EXEC sp_addlogin song, good, DB1000, NULL, 00a bcd 12345678 例62 將登錄用戶“song”

18、的密碼由“good1”改為“good2”。 EXEC sp_password good1, good2, song,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,(2)使用系統(tǒng)存儲(chǔ)過(guò)程sp_helplogins顯示登錄系統(tǒng)管理 員sa可以使用系統(tǒng)存儲(chǔ)過(guò)程sp_helplogins來(lái)查看當(dāng)前數(shù) 據(jù)庫(kù)服務(wù)器中的登錄信息,語(yǔ)法如下: sp_helplogins loginname=登錄名 若未提供登錄名,返回結(jié)果將包括當(dāng)前數(shù)據(jù)庫(kù)服務(wù)器 中的所有登錄信息。 (3)使用系統(tǒng)存儲(chǔ)過(guò)程sp_droplogin刪除登錄 系統(tǒng)管理員sa可以使用系統(tǒng)存儲(chǔ)過(guò)程sp_dro

19、plogin從數(shù)據(jù)庫(kù)中刪除登錄。其語(yǔ)法如下: sp_droplogin loginname=登錄名,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,2.數(shù)據(jù)庫(kù)用戶管理 用戶名實(shí)際上是訪問(wèn)同一服務(wù)器上的不同數(shù)據(jù)庫(kù)的標(biāo) 識(shí),用戶在數(shù)據(jù)庫(kù)中的操作能力取決于用戶的權(quán)限。 (1)使用系統(tǒng)存儲(chǔ)過(guò)程sp_adduser創(chuàng)建用戶,語(yǔ)法如下: sp_adduser loginname=登錄名, username=用戶 名,groupname=角色名 需要注意的是:這里的登錄名loginname不能無(wú)效,用戶名username不能為空。,6.5.2 SQL Server的

20、安全管理,6.5 SQL Server的安全管理與策略,例 63 在數(shù)據(jù)庫(kù)DB1000的角色“secret”中創(chuàng)建用戶“Wang”,使用“Myway”登錄。 USE DB1000 EXEC sp_adduser Myway,Wang,secret (2)使用系統(tǒng)存儲(chǔ)過(guò)程sp_dropuser刪除用戶,語(yǔ)法如下: sp_dropuser username=用戶名 例 64 在數(shù)據(jù)庫(kù)DB1000中刪除用戶“Wang” USE DB1000 EXEC sp_dropuser Wang,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,3.數(shù)據(jù)庫(kù)角色管理 數(shù)據(jù)庫(kù)

21、角色是指為管理相同權(quán)限的用戶而設(shè)置的用戶組,也就是說(shuō),同一角色下的用戶權(quán)限都是相同的。 在SQL Server數(shù)據(jù)庫(kù)中,把相同權(quán)限的一組用戶設(shè)置為某一角色后,當(dāng)對(duì)該角色進(jìn)行權(quán)限設(shè)置時(shí),這些用戶就自動(dòng)繼承修改后的權(quán)限。 SQL Server數(shù)據(jù)庫(kù)的角色通??梢苑譃槿悾?數(shù)據(jù)庫(kù)服務(wù)器角色 數(shù)據(jù)庫(kù)角色 應(yīng)用程序角色,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,(1)SQL Server數(shù)據(jù)庫(kù)角色分類 數(shù)據(jù)庫(kù)服務(wù)器角色:都是SQL Server內(nèi)置的,即不能對(duì)其進(jìn)行添加、修改和刪除,只能向其中加入用戶或者其他角色。 數(shù)據(jù)庫(kù)角色:是為某一用戶或某一組用戶授

22、予不同級(jí)別的管理或訪問(wèn)數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)對(duì)象的權(quán)限,這些權(quán)限是數(shù)據(jù)庫(kù)專有的。 應(yīng)用程序角色:是一種比較特殊的角色。如通過(guò)特定應(yīng)用程序間接地存取數(shù)據(jù)庫(kù)中的數(shù)據(jù)時(shí),所使用的角色。,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,(2)利用系統(tǒng)存儲(chǔ)過(guò)程管理角色 管理數(shù)據(jù)庫(kù)服務(wù)器角色 在SQL Server中,管理服務(wù)器角色的存儲(chǔ)過(guò)程主要有 兩個(gè)sp_addsrvrolemember,sp_dropsrvrolemember 系統(tǒng)存儲(chǔ)過(guò)程sp_addsrvrolemember可以將某一登錄 帳號(hào)加入到服務(wù)器角色中,使其成為該服務(wù)器角色的成員。 其語(yǔ)法形式如下:

23、sp_addsrvrolemember login,role,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,管理數(shù)據(jù)庫(kù)角色 管理數(shù)據(jù)庫(kù)角色的系統(tǒng)存儲(chǔ)過(guò)程見(jiàn)下表:,6.5 SQL Server的安全管理與策略,用戶在進(jìn)行數(shù)據(jù)庫(kù)的角色管理時(shí),需要注意以下4點(diǎn): 固定數(shù)據(jù)庫(kù)服務(wù)器角色或固定數(shù)據(jù)庫(kù)角色不能被增加、修改或刪除,也就是說(shuō)定義角色只能是在數(shù)據(jù)庫(kù)級(jí)別上。 只有固定數(shù)據(jù)庫(kù)服務(wù)器角色才能執(zhí)行系統(tǒng)存儲(chǔ)過(guò)程sp_addsrvrolemember,把一個(gè)登錄帳號(hào)添加為一個(gè)固定數(shù)據(jù)庫(kù)服務(wù)器角色的成員。,6.5.2 SQL Server的安全管理,6.5 SQL

24、Server的安全管理與策略,只有固定數(shù)據(jù)庫(kù)服務(wù)器角色db_owner的成員才可以添 加任意成員到數(shù)據(jù)庫(kù)角色中,角色所有者只能在其所擁有 的角色中添加成員。 應(yīng)用程序角色不包括任何用戶。通過(guò)應(yīng)用程序角色, 各個(gè)應(yīng)用程序授予的訪問(wèn)權(quán)是不同的。使用應(yīng)用程序角色 時(shí),必須提供密碼并激活角色才能使用。,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,4.數(shù)據(jù)庫(kù)權(quán)限管理 設(shè)置用戶對(duì)數(shù)據(jù)庫(kù)的操作權(quán)限稱為授權(quán),SQL Server中對(duì)于未授權(quán)的用戶將無(wú)法訪問(wèn)或存取數(shù)據(jù)庫(kù)數(shù)據(jù)。 通常權(quán)限分為以下三種: 1)對(duì)象權(quán)限:指允許用戶或角色創(chuàng)建、修改或刪除數(shù)據(jù)庫(kù)對(duì)象,以及允許

25、備份和恢復(fù)數(shù)據(jù)庫(kù)和事務(wù)日志。 2)語(yǔ)句權(quán)限:指允許對(duì)數(shù)據(jù)庫(kù)對(duì)象(包括表、視圖)進(jìn)行查詢、添加、修改和刪除操作,以及允許執(zhí)行存儲(chǔ)過(guò)程。 3)暗示性權(quán)限:指系統(tǒng)預(yù)定義的固定數(shù)據(jù)庫(kù)服務(wù)器角色成員、數(shù)據(jù)庫(kù)擁有者(DBO)和數(shù)據(jù)庫(kù)對(duì)象擁有者(DBOO)所擁有的權(quán)限。,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,SQL Server數(shù)據(jù)庫(kù)權(quán)限的管理 權(quán)限管理主要針對(duì)對(duì)象權(quán)限和語(yǔ)句權(quán)限,通常權(quán)限有三種狀態(tài):授予權(quán)限、撤消權(quán)限、拒絕訪問(wèn)。 例 65 將創(chuàng)建數(shù)據(jù)庫(kù)和視圖的權(quán)限授予DB1000數(shù)據(jù)庫(kù)中的RedRole角色。 USE DB1000 GO GRANT CR

26、EATE DATABASE, CREATE TABLE TO RedRole GO,6.5.2 SQL Server的安全管理,6.5 SQL Server的安全管理與策略,1.SQL Server的安全策略 采取恰當(dāng)?shù)陌踩呗詠?lái)應(yīng)對(duì)SQL Server數(shù)據(jù)庫(kù)中的安全漏洞和不當(dāng)配置是很重要的,下面介紹4種常用的安全策略: 安全密碼和安全帳號(hào)策略 日志記錄檢測(cè)策略 擴(kuò)展存儲(chǔ)過(guò)程管理策略 網(wǎng)絡(luò)及協(xié)議安全管理策略,6.5.3 SQL Server的安全策略及常用安全工具,6.5 SQL Server的安全管理與策略,2.SQL Server的常用安全工具 (1)Sscheck.exe Sscheck

27、.exe是微軟發(fā)布的一種SQL Server安全檢查工 具,用于定位和禁用容易受Slammer蠕蟲(chóng)程序攻擊的SQL Server 2000和SQL Server 2000 Desktop Engine(MSDE 2000)實(shí)例。,6.5.3 SQL Server的安全策略及常用安全工具,6.5 SQL Server的安全管理與策略,2.SQL Server的常用安全工具 (2)Sqlscan.exe Sqlscan.exe是微軟發(fā)布的一種SQL Server安全掃描工 具,用于定位SQL Server 2000和MSDE 2000實(shí)例。該掃 描程序還可以掃描Windows域或特定范圍內(nèi)的IP地

28、址,識(shí) 別出容易受Slammer蠕蟲(chóng)程序攻擊的SQL Server實(shí)例。,6.5.3 SQL Server的安全策略及常用安全工具,6.5 SQL Server的安全管理與策略,6.6 應(yīng)用示例:數(shù)據(jù)庫(kù)加密系統(tǒng),1.數(shù)據(jù)庫(kù)加密的必要性 OS和DBMS對(duì)數(shù)據(jù)庫(kù)文件本身仍然缺乏有效保護(hù)措施; 數(shù)據(jù)庫(kù)加密對(duì)內(nèi)部網(wǎng)絡(luò)安全管理是非常重要的。 2.數(shù)據(jù)庫(kù)加密的基本要求 字段加密 密鑰動(dòng)態(tài)管理 合理處理數(shù)據(jù) 不影響合法用戶操作,6.6.1 數(shù)據(jù)庫(kù)加密系統(tǒng)概述,3.在不同層次實(shí)現(xiàn)數(shù)據(jù)庫(kù)加密 OS層加密 DBMS內(nèi)核層加密 DBMS外層加密,6.6.1 數(shù)據(jù)庫(kù)加密系統(tǒng)概述,6.6 應(yīng)用示例:數(shù)據(jù)庫(kù)加密系統(tǒng),4.

29、加密系統(tǒng)的有關(guān)問(wèn)題 在用戶進(jìn)入系統(tǒng)時(shí)進(jìn)行兩級(jí)安全控制 這種控制可以采用多種方式,包括設(shè)置數(shù)據(jù)庫(kù)用戶名 口令,或者利用IC卡讀寫(xiě)器/指紋識(shí)別器進(jìn)行用戶認(rèn)證。 防止非法拷貝 對(duì)于純軟件系統(tǒng),可以采用軟指紋技術(shù)防止非法拷 貝,每臺(tái)都安裝加密卡等硬部件客戶機(jī)安全性會(huì)更好。 安全的數(shù)據(jù)抽取方式 有兩種卸出和裝入數(shù)據(jù)庫(kù)中加密數(shù)據(jù)的方式:一是 密文方式卸出;二是明文方式卸出。,6.6.1 數(shù)據(jù)庫(kù)加密系統(tǒng)概述,6.6 應(yīng)用示例:數(shù)據(jù)庫(kù)加密系統(tǒng),5.系統(tǒng)結(jié)構(gòu) 數(shù)據(jù)庫(kù)加密系統(tǒng)分成兩個(gè)功能獨(dú)立的主要部件:一 個(gè)是加密字典管理程序,另一個(gè)是數(shù)據(jù)庫(kù)加/解密引擎, 體系結(jié)構(gòu)如圖 6-6 所示。,6.6.1 數(shù)據(jù)庫(kù)加密系統(tǒng)

30、概述,6.6 應(yīng)用示例:數(shù)據(jù)庫(kù)加密系統(tǒng),1.數(shù)據(jù)庫(kù)密碼 應(yīng)用于數(shù)據(jù)庫(kù)加密的加密算法稱為數(shù)據(jù)庫(kù)密碼。加密 算法根據(jù)不同需要可分為:序列密碼、分組密碼、公開(kāi)密 鑰密碼。 2.密鑰管理方法 數(shù)據(jù)庫(kù)加密需要實(shí)行二級(jí)密鑰管理。一級(jí)密鑰為主密 鑰,二級(jí)密鑰為工作密鑰。 3.密鑰的安全保護(hù) 主密鑰的安全需要解決:主密鑰的生成、主密鑰的存 儲(chǔ)、主密鑰的更換這幾個(gè)問(wèn)題。,6.6.2 數(shù)據(jù)庫(kù)加密系統(tǒng)的密鑰管理,6.6 應(yīng)用示例:數(shù)據(jù)庫(kù)加密系統(tǒng),1.加/解密引擎體系結(jié)構(gòu) 數(shù)據(jù)庫(kù)加/解密引擎系統(tǒng)結(jié)構(gòu)如圖 68所示。 2.加解密處理 “加解密處理模塊”是數(shù)據(jù)庫(kù)加密引擎的核心模塊, 包括數(shù)據(jù)庫(kù)加解密引擎的初始化、內(nèi)部專用命令的處理加 密字典信息檢索、加密字典緩沖區(qū)的管理、SQL命令的加 密變換、查詢

溫馨提示

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

評(píng)論

0/150

提交評(píng)論