資源描述:
《數(shù)據(jù)庫的安全性管理.doc》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第10章數(shù)據(jù)庫的安全性管理教學(xué)目標(biāo):掌握SQLSever的安全機(jī)制,了解登錄和用戶的概念,掌握權(quán)限管理和掌握角色管理。通過本章的學(xué)習(xí),要求讀者深入理解SQLServer的安全機(jī)制,以及掌握常用的管理操作,培養(yǎng)良好的數(shù)據(jù)庫安全意識以及制定合理的數(shù)據(jù)庫安全策略。建立C/S結(jié)構(gòu)的網(wǎng)絡(luò)數(shù)據(jù)庫概念,鍛煉實(shí)際數(shù)據(jù)庫管理能力,為今后從事數(shù)據(jù)庫管理員(DBA)的工作奠定基礎(chǔ)。10.1SQLServer的安全性機(jī)制在介紹安全管理之前,首先看一下SQLServer是如何保證數(shù)據(jù)庫安全性的,即了解SQLServer安全機(jī)制。10.1.1權(quán)限層次機(jī)制SQL
2、Server2005的安全性管理可分為3個等級:1、操作系統(tǒng)級;2、SQLServer級3、數(shù)據(jù)庫級。10.1.2操作系統(tǒng)級的安全性在用戶使用客戶計算機(jī)通過網(wǎng)絡(luò)實(shí)現(xiàn)SQLServer服務(wù)器的訪問時,用戶首先要獲得計算機(jī)操作系統(tǒng)的使用權(quán)。一般說來,在能夠?qū)崿F(xiàn)網(wǎng)絡(luò)互聯(lián)的前提下,用戶沒有必要向運(yùn)行SQLServer服務(wù)器的主機(jī)進(jìn)行登錄,除非SQLServer服務(wù)器就運(yùn)行在本地計算機(jī)上。SQLServer可以直接訪問網(wǎng)絡(luò)端口,所以可以實(shí)現(xiàn)對WindowsNT安全體系以外的服務(wù)器及其數(shù)據(jù)庫的訪問,操作系統(tǒng)安全性是操作系統(tǒng)管理員或者網(wǎng)絡(luò)管理員的
3、任務(wù)。由于SQLServer采用了集成WindowsNT網(wǎng)絡(luò)安全性機(jī)制,所以使得操作系統(tǒng)安全性的地位得到提高,但同時也加大了管理數(shù)據(jù)庫系統(tǒng)安全性的靈活性和難度。10.1.3SQLServer級的安全性SQLServer的服務(wù)器級安全性建立在控制服務(wù)器登錄帳號和口令的基礎(chǔ)上。SQLServer采用了標(biāo)準(zhǔn)SQLServer登錄和集成WindowsNT登錄兩種方式。無論是使用哪種登錄方式,用戶在登錄時提供的登錄帳號和口令,決定了用戶能否獲得SQLServer的訪問權(quán),以及在獲得訪問權(quán)以后,用戶在訪問SQLServer時可以擁有的權(quán)利。10
4、.1.1數(shù)據(jù)庫級的安全性在用戶通過SQLServer服務(wù)器的安全性檢驗以后,將直接面對不同的數(shù)據(jù)庫入口這是用戶將接受的第三次安全性檢驗。在建立用戶的登錄帳號信息時,SQLServer會提示用戶選擇默認(rèn)的數(shù)據(jù)庫。以后用戶每次連接上服務(wù)器后,都會自動轉(zhuǎn)到默認(rèn)的數(shù)據(jù)庫上。對任何用戶來說master數(shù)據(jù)庫的門總是打開的,設(shè)置登錄賬號時沒有指定默認(rèn)的數(shù)據(jù)庫,則用戶的權(quán)限將局限在master數(shù)據(jù)庫以內(nèi)。在默認(rèn)的情況下只有數(shù)據(jù)庫的擁有者才可以訪問該數(shù)據(jù)庫的對象,數(shù)據(jù)庫的擁有者可以分配訪問權(quán)限給別的用戶,以便讓別的用戶也擁有針對該數(shù)據(jù)庫的訪問權(quán)利,
5、在SQLServer中并不是所有的權(quán)利都可以轉(zhuǎn)讓分配的。10.2登錄和用戶現(xiàn)在從登錄和用戶開始,講解SQLServer2005的安全性管理,本節(jié)主要講解登錄和用戶的基本概念、登錄驗證模式及其創(chuàng)建登錄和用戶的操作步驟。10.2.1登錄身份驗證模式及其設(shè)置首先介紹兩個概念:用戶和登錄。用戶連接到SQLServer賬戶都稱SQLServer的登錄:用戶是為特定數(shù)據(jù)庫定義的,要創(chuàng)建用戶,你必須已經(jīng)定義了該用戶的登錄,用戶ID同登錄類似,但是它的名稱不需要與登錄相同。用戶可以防止數(shù)據(jù)庫被未授權(quán)的用戶故意或無意地修改。SQLServer為每一用
6、戶分配了唯一的用戶名和密碼。可以為不同賬號授予不同的安全級別。對于訪問SQLServer的登錄,有兩種驗證模式:Windows身份驗證和混合模式身份驗證。在Windows身份驗證中,SQLServer依賴于Windows操作系統(tǒng)提供登錄安全性,SQLServer檢驗登錄是否被Windows驗證身份,并根據(jù)這一驗證來允許訪問。SQLServer將自己的登錄安全過程同Windows登錄安全過程結(jié)合起來提供安全登錄服務(wù)。網(wǎng)絡(luò)安全性通過同Windows提供復(fù)雜加密過程進(jìn)行驗證。用戶登錄一旦通過操作系統(tǒng)的驗證,訪問SQLServer就不再需要
7、其它的身份驗證。如果連接來自一個不安全的系統(tǒng),我們還可以使用混合模式身份驗證,SQLServer將驗證登錄的身份,即通過用戶提供的登錄名和與預(yù)先存儲在數(shù)據(jù)庫中的登錄名和密碼進(jìn)行比較來完成身份驗證。下面我們看一看如何在SSMS中設(shè)置身份驗證模式。(1)打開SSMS并連接到目標(biāo)服務(wù)器,在【資源管理器】窗口中,在目標(biāo)服務(wù)器上單擊鼠標(biāo)右鍵,彈出快捷菜單,從中選擇“屬性”命令,如圖10.1所示。圖10.1利用對象資源管理器設(shè)置身份驗證模式(2)出現(xiàn)【服務(wù)器屬性】窗口,選擇【選擇頁】中的“安全性”選項,進(jìn)入安全性設(shè)置頁面,如圖10.2所示圖10
8、.2服務(wù)器屬性窗口的安全性頁面(3)在“服務(wù)器身份驗證”選項級中選擇驗證模式前的單選按鈕,選中需要的驗證模式。用戶還可以在“登錄審核”選項級中設(shè)置需要的審核方式,如圖10.3所示。審核方式取決于安全性要求,這四種審核級別的含義如下?!?/p>