《數(shù)據(jù)庫系統(tǒng)17--用戶和安全性管理》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫系統(tǒng)17--用戶和安全性管理(21頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、*,,,,,,,,,,單擊此處編輯母版標(biāo)題樣式,,單擊此處編輯母版文本樣式,,第二級,,第三級,,第四級,,第五級,,,第,17,講,用戶和安全性管理,一、,SQL Server,安全機制,,,1,安全性概述,,,2,安全機制,的四個層次,,二、登錄管理,,,,1,用企業(yè)管理器管理登錄,,,2,用,T-SQL,,命令管理登錄,,三、用戶、角色和權(quán)限管理,,,1,用戶管理,,,2,角色管理,,,3,權(quán)限管理,,一、,SQL Server,安全機制,,,1,安全性概述,在開發(fā)數(shù)據(jù)庫的時候,經(jīng)常會擔(dān)心數(shù)據(jù)庫的,,安全性,.,雖然不必要在數(shù)據(jù)庫設(shè)計還未定型時就,,開始應(yīng)用安全性,但是對于數(shù)據(jù)庫項目來說
2、,早,,一些開發(fā)和實施安全性計劃比晚一些要好得多,.,,,與數(shù)據(jù)庫項目的所有其它方面一樣,必須對,,安全性加以仔細(xì)地設(shè)計、實施和測試,.,安全性會,,影響到一些過程的執(zhí)行,在開發(fā)項目的代碼時必,,須對它加以考慮,.,,對于較小的組織來說,使用具有較少的角色,,,,并將,IT,,用戶作為,sysadmin,,的簡單安全計劃就,,足夠了,.,較大的組織,---,軍隊、銀行或者研究機構(gòu),,---,將需要更為復(fù)雜的安全性計劃,設(shè)計它時需要,,像設(shè)計邏輯數(shù)據(jù)庫模式一樣仔細(xì),.,,SQL Server,的安全性模型是經(jīng)過精心設(shè)計的,,,,如果能夠全面地理解它,就會發(fā)現(xiàn)它既合理又靈,,活,.,其中,保證數(shù)據(jù)
3、庫安全性的主要手段是創(chuàng)建,,用戶和角色,然后指派權(quán)限;而安全策略的主要,,工作則是確定數(shù)據(jù)訪問的權(quán)利和責(zé)任,然后實施,,安全計劃,.,,數(shù)據(jù)庫管理系統(tǒng)盡管在企業(yè)的,IT,,架構(gòu)中,,起著舉足輕重的作用,但仍然還是一個運行在,,某一特定操作系統(tǒng)平臺下的應(yīng)用軟件,.,這樣,,,,SQL Server,的安全機制可以分為如下四個層,,次:,,(,1,)客戶機操作系統(tǒng)的安全性,,(,2,),SQL Server,的登錄安全性,,(,3,)數(shù)據(jù)庫的使用安全性,,(,4,)數(shù)據(jù)庫對象的使用安全性,,每個安全層次就好像一道門,如果門沒有,,上鎖或有開門的鑰匙,用戶就可通過這道門,.,2,安全機制,的四個層次
4、,,,(,1,)客戶機操作系統(tǒng)的安全性,,,在用戶要使用客戶計算機通過網(wǎng)絡(luò)訪問,,SQL Server,服務(wù)器時,首先要獲得客戶計算,,機操作系統(tǒng)的使用權(quán),.,即,用戶至少要知道客,,戶端計算機的用戶名和密碼,以能夠使用它,.,,,一般地,在已有網(wǎng)絡(luò)互聯(lián)的前提下,用戶,,要登錄的是客戶機,然后再通過客戶機上安裝,,的,SQL Server,客戶端對服務(wù)器端進(jìn)行訪問,.,,,定義操作系統(tǒng)安全性是操作系統(tǒng)管理員和,,網(wǎng)絡(luò)管理員的任務(wù),.,SQL Server,采用了集成,,Windows,系統(tǒng)網(wǎng)絡(luò)安全性的機制,.,,,(,2,),SQL Server,服務(wù)器的安全性,,,SQL Server,的服
5、務(wù)器級安全性建立在控制,,服務(wù)器登錄帳號和口令的基礎(chǔ)上,.,,SQL Server,采用了標(biāo)準(zhǔn),SQL Server,登錄,,和集成,Windows,,系統(tǒng)登錄兩種方式,.,,,一旦服務(wù)器了解和識別了用戶,就可以通,,過為他授予固定服務(wù)器角色使其具有特定的服,,務(wù)器管理權(quán)限,.,,,如果用戶屬于,sysadmin,,角色,他就具有,,了全面訪問所有服務(wù)器功能、數(shù)據(jù)庫和服務(wù)器,,上的對象的權(quán)限,.,,,(,3,) 數(shù)據(jù)庫的安全性,,,在用戶通過,SQL Server,服務(wù)器的安全性,,檢驗以后,將直接面對不同的數(shù)據(jù)庫入口,.,這,,是用戶將要接受的第三次安全性檢驗,.,,,在建立用戶登錄帳號信息
6、時,,,SQL Server,,會提示用戶選擇默認(rèn)的數(shù)據(jù)庫,以后每次登錄,,后會自動轉(zhuǎn)到這個數(shù)據(jù)庫上,.,系統(tǒng)缺省的默認(rèn),,數(shù)據(jù)庫是,master,.,最好將默認(rèn)數(shù)據(jù)庫設(shè)置在,,具有實際操作意義的數(shù)據(jù)庫上,.,,在默認(rèn)情況下,只有數(shù)據(jù)庫的擁有者才可,,以訪問該數(shù)據(jù)庫的對象,.,數(shù)據(jù)庫的擁有者可以,,分配訪問權(quán)給別的用戶,以便讓別的用戶也擁,,有針對該數(shù)據(jù)庫的訪問權(quán)利,.,在,SQL Server,,中并不是所有的權(quán)利都可以自由轉(zhuǎn)讓和分配的,.,,,有一個特殊情況,那就是,Guest,用戶,.,在,,安裝系統(tǒng)時,,,Guest,用戶加入到,master,、,,pubs,、,tempdb,,和,N
7、orthwind,,數(shù)據(jù)庫中,這個,,用戶帳號主要供那些沒有當(dāng)前,SQL Server,數(shù),,據(jù)庫用戶的登錄者使用,使他們能夠以匿名訪,,問的方式察看該用戶所擁有的數(shù)據(jù)庫中的數(shù)據(jù),.,,(,4,)數(shù)據(jù)庫對象的安全性,,,數(shù)據(jù)庫對象的安全性是核查用戶權(quán)限的最,,后一個安全等級,.,在創(chuàng)建數(shù)據(jù)庫對象的時候,,,SQL Server,將自動把對象的擁有權(quán)賦予該對象,,的創(chuàng)建者,.,對象的擁有者可以實現(xiàn)對該對象的,,完全控制,.,,,在默認(rèn)情況下,只有數(shù)據(jù)庫的擁有者才可,,以在該數(shù)據(jù)庫下進(jìn)行操作,.,當(dāng)一個非數(shù)據(jù)庫的,,擁有者的用戶想訪問數(shù)據(jù)庫里的對象時,必須,,事先由數(shù)據(jù)庫的擁有者賦予對該用戶對指定
8、對,,象的指定操作,.,,例如,一個用戶想訪問,mydb,,數(shù)據(jù)庫里的,,company,表中的信息,.,則他必須在首先成為數(shù),,據(jù)庫合法用戶的前提下,獲得由,mydb,,數(shù)據(jù)庫,,擁有者分配的針對,company,表的訪問權(quán)限,.,,,一般來說,為了減少管理的開銷,在對象,,級安全管理上應(yīng)該在大多數(shù)場合賦予數(shù)據(jù)庫用,,戶以廣泛的權(quán)限,然后再針對實際情況在某些,,敏感的數(shù)據(jù)上實施具體的訪問權(quán)限限制,.,,,雖然整個認(rèn)證過程十分復(fù)雜,但是,數(shù)據(jù),,庫管理員管理服務(wù)器時,卻是一件十分輕松的,,事,.,,二、登錄管理,,,1,用企業(yè)管理器管理登錄,使用企業(yè)管理器可以設(shè)置,SQL Server,認(rèn)證,
9、,模式、創(chuàng)建登錄帳號、修改和刪除登陸帳號,.,,,●,設(shè)置,SQL Server,,認(rèn)證模式,,,(,1,)啟動企業(yè)管理器,選擇要設(shè)置的服務(wù)器,;,,,(,2,)單擊右鍵,選擇,〖,屬性,〗,;,,,(,3,)在相應(yīng)的對話框中,選擇,〖,安全性,〗,;,,,(,4,)進(jìn)行各項設(shè)置,;,,,(,5,)單擊,〖,確定,〗,按鈕,即可完成設(shè)置工作,.,,,演示,,●,創(chuàng)建登錄帳號,,(,1,)啟動企業(yè)管理器,單擊登錄服務(wù)器左邊,,的 “,+,”,圖標(biāo),;,,,(,2,)單擊,〖,安全性,〗,左邊的 “,+,”,圖標(biāo),;,,,(,3,)右鍵單擊,〖,登錄,〗,圖標(biāo),,,選擇,〖,新建登,,錄,〗,;,
10、,,(,4,)進(jìn)行各項設(shè)置,;,,,(,5,)單擊,〖,確定,〗,按鈕,即可完成設(shè)置工作,.,,,演示,,,修改和刪除登陸帳號的操作類似,.,,2,用,T-SQL,,命令管理登錄,對于一些十分熟悉,SQL Server,的編程人,,員,/,數(shù)據(jù)庫管理人員來說,通過查詢分析器管理,,SQL Server,更方便和快捷,.,使用查詢分析器的,,前提是必須熟練掌握相關(guān)的,T-SQL,,命令,.,,,管理登錄的主要,T-SQL,命令如下:,,,sp_addlogin,,創(chuàng)建登錄帳號,,,,sp_droplogin,,刪除登錄帳號,,,sp_password,,修改登錄用戶的密碼,,,,sp_defau
11、ltdb,,修改默認(rèn)數(shù)據(jù)庫,,用,EXEC,,調(diào)用它們,有的還需要參數(shù),.,,例如,創(chuàng)建帳戶,zhx,,密碼:,wanghan,,,,默認(rèn)數(shù)據(jù)庫為,mydb1,:,,,EXEC,,sp_addlogin,,‘,zhx,’, ’,wanghan,’,,,‘mydb1’,,,GO,,,完成,SQL Server,安裝后,系統(tǒng)就建立了,,一個特殊帳戶,sa,.,它擁有服務(wù)器和所有的數(shù)據(jù),,庫,因此有最高的管理權(quán)限,可以執(zhí)行服務(wù)器,,范圍內(nèi)的所有操作,.,,,剛安裝完時,,sa,,帳戶沒有密碼, 這是非,,常危險的,.,要做的第一件事,,,就是設(shè),sa,,的密碼,.,,三、用戶、角色和權(quán)限管理,,,1
12、,用戶管理,使用企業(yè)管理器可以創(chuàng)建數(shù)據(jù)庫用戶、查看,,用戶的權(quán)限設(shè)置、刪除數(shù)據(jù)庫用戶(略),.,,,●,創(chuàng)建數(shù)據(jù)庫用戶,,,(,1,)啟動企業(yè)管理器,單擊登錄服務(wù)器左邊,,的 “,+,”,圖標(biāo),展開,〖,數(shù)據(jù)庫,〗,選項夾;,,(,2,)單擊要創(chuàng)建用戶帳號的那個,〖,數(shù)據(jù)庫,〗,,左邊的 “,+,”,圖標(biāo),;,,,(,3,)右鍵單擊,〖,用戶,〗,圖標(biāo),,,選擇,〖,新建數(shù)據(jù),,庫用戶,〗,;,,,(,4,)進(jìn)行各項設(shè)置,;,,,(,5,)單擊,〖,確定,〗,按鈕,即可完成設(shè)置工作,.,,,,演示,,,●,查看用戶的權(quán)限設(shè)置,,數(shù)據(jù)庫管理員在日常維護(hù)過程中,應(yīng)經(jīng)常,,檢查數(shù)據(jù)庫用戶的信息,防止
13、某些非法用戶通,,過各種方法解密數(shù)據(jù)庫服務(wù)器,通過非法創(chuàng)建,,數(shù)據(jù)庫用戶的方式越權(quán)訪問數(shù)據(jù)庫的內(nèi)容,.,,,在,SQL Server,中,,,利用企業(yè)管理器可以,,十分直觀、方便地查看某數(shù)據(jù)庫中所有的數(shù)據(jù),,庫用戶權(quán)限設(shè)置,使用查詢分析器,可以查看,,出更多數(shù)據(jù)庫用戶設(shè)置相關(guān)的內(nèi)容,.,,,利用企業(yè)管理器查看用戶權(quán)限的方法與前,,面講的相似,,,不再敘述,.,,2,角色管理,企業(yè)管理器可管理服務(wù)器角色和數(shù)據(jù)庫角色,.,,,●,管理服務(wù)器角色,,,對于服務(wù)器角色來講,數(shù)據(jù)庫管理員能做的,,操作只有兩個:添加或刪除服務(wù)器角色中的成員,,,,而不能刪除服務(wù)器預(yù)定義的角色(,8,種),.,,,(,1,
14、)啟動企業(yè)管理器,登錄到指定的服務(wù)器,;,,,(,2,)展開,〖,安全性,〗,,單擊,〖,服務(wù)器角色,〗,;,,,(,3,)右鍵單擊相應(yīng)的服務(wù)器角色,在彈出的,,菜單中,選擇,〖,屬性,〗,;,,,(,4,)在相應(yīng)的對話框中,進(jìn)行設(shè)置,.,,,,演示,,數(shù)據(jù)庫角色有兩種:固定數(shù)據(jù)庫角色和用戶,,自定義的數(shù)據(jù)庫角色,.,,,兩種數(shù)據(jù)庫角色的管理都可以用,企業(yè)管理器,,進(jìn)行,.,,,SQL Server,中有一個特殊的數(shù)據(jù)庫角色,就,,是,public,.,所有的數(shù)據(jù)庫用戶都屬于,public,角色,.,,它的特點是:,,,(1),替數(shù)據(jù)庫用戶捕獲所有的數(shù)據(jù)庫默認(rèn)權(quán)限,.,,(2),不能將,pub
15、lic,角色分配,.,,(3),public,角色存在于每一個數(shù)據(jù)庫中,.,,(4),不能將,public,角色刪除,.,,在所有數(shù)據(jù)庫用戶中,特殊用戶,dbo,,具有最,,高的管理權(quán)限,.,作為數(shù)據(jù)庫的擁有者,它也是所,,有數(shù)據(jù)庫對象的擁有者,可以在數(shù)據(jù)庫范圍內(nèi)執(zhí),,行一切操作,.,,,固定的服務(wù)器角色,sysadmin,,的用戶都對應(yīng),,數(shù)據(jù)庫用戶,dbo,,所有由,sysadmin,,成員創(chuàng)建的,,數(shù)據(jù)庫對象都自動將擁有者設(shè)置為,dbo,.,,3,權(quán)限管理,企業(yè)管理器可以管理權(quán)限,.,,,注意,:,,,權(quán)限只能授予本數(shù)據(jù)庫的用戶,或者獲準(zhǔn)訪,,問本數(shù)據(jù)庫的別的數(shù)據(jù)庫的用戶,.,,,如果將權(quán)限授予了,public,角色,則所有的數(shù),,據(jù)庫里的所有的用戶都將默認(rèn)地獲得了該項權(quán)限,.,,,如果將權(quán)限授予了,guest,用戶,則所有可連,,接上服務(wù)器的用戶都將默認(rèn)地獲得了該項權(quán)限,.,,,教學(xué)調(diào)查,,1《,數(shù)據(jù)庫,》,課程的重要性?,,2,你認(rèn)為本課程如何教學(xué)會更好?,,3,你認(rèn)為應(yīng)用數(shù)學(xué)專業(yè)課程設(shè)置應(yīng)怎樣改進(jìn)?,,