實(shí)驗(yàn)五 安全性_第1頁
實(shí)驗(yàn)五 安全性_第2頁
實(shí)驗(yàn)五 安全性_第3頁
實(shí)驗(yàn)五 安全性_第4頁
實(shí)驗(yàn)五 安全性_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 SQL Server 2005數(shù)據(jù)庫的安全性 1學(xué)習(xí)目標(biāo)會設(shè)置SQL Server 2005登錄驗(yàn)證模式會創(chuàng)建登錄、角色及SQL Server 2005數(shù)據(jù)庫用戶會授予與收回用戶權(quán)限2 數(shù)據(jù)庫的安全性任務(wù)1 使用SQL Server Management Studio創(chuàng)建和管理數(shù)據(jù)庫用戶及角色任務(wù)2 使用SQL Server Management Studio授予用戶權(quán)限。任務(wù)3 使用T-SQL語句創(chuàng)建和管理數(shù)據(jù)庫用戶及角色。任務(wù)4 使用T-SQL語句授予與收回用戶權(quán)限。3任務(wù)1 使用SQL Server Management Studio創(chuàng)建d登錄、數(shù)據(jù)庫用戶及角色【任務(wù)描述】 創(chuàng)建一個服

2、務(wù)器登錄,名稱為studentuser1,創(chuàng)建一個數(shù)據(jù)庫角色student,創(chuàng)建一個學(xué)生課程student數(shù)據(jù)庫的用戶susan。 【任務(wù)分析】 一個SQL Server登錄賬號只有成為數(shù)據(jù)庫的用戶,對該數(shù)據(jù)庫才有訪問權(quán)限。每個登錄賬號在一個數(shù)據(jù)庫中只能有一個用戶賬號,但可以在不同的數(shù)據(jù)庫中各有一個用戶賬號。 角色分為服務(wù)器角色和數(shù)據(jù)庫角色兩種,本任務(wù)要求創(chuàng)建的是數(shù)據(jù)庫角色。4任務(wù)1 操作步驟 1、啟動SQL Server Management Studio,在“對象資源管理器”窗口中選擇服務(wù)器,展開【安全性】【登錄名】,右擊【登錄名】,在彈出的快捷菜單中選擇“新建登錄名”命令,如左圖所示。打

3、開“新建登錄名-新建”對話框,在“常規(guī)”選項(xiàng)頁面中的“登錄名”文本框內(nèi)輸入用入登錄名稱,如“studentuser1”,同時在密碼框內(nèi)輸入密碼和確認(rèn)密碼框內(nèi)再次輸入相同密碼,默認(rèn)數(shù)據(jù)庫選擇“student”,最后點(diǎn)擊“確定”按鈕,如右圖所示。5 2、在“對象資源管理器”窗口中選擇服務(wù)器,展開“數(shù)據(jù)庫student安全性角色”,右擊“數(shù)據(jù)庫角色”,在彈出的快捷菜單中單擊“新建角色”命令,打開“數(shù)據(jù)庫角色-新建”對話框,在角色名稱中輸入“student”,然后單擊“所有者”文本框右側(cè)的瀏覽按鈕。如左圖所示。在打開的“選擇數(shù)據(jù)庫用戶或角色”對話框中,單擊右側(cè)的“瀏覽”按鈕,打開“查找對象”對話框中,

4、在列表框中選擇“student”數(shù)據(jù)庫角色,如右圖所示。任務(wù)1 操作步驟6 3、在“對象資源管理器”窗口中選擇服務(wù)器,展開“數(shù)據(jù)庫student安全性”,右擊“用戶”,在彈出的快捷菜單中選擇“新建用戶”命令,如左圖所示。打開“新建用戶-新建”對話框,在“常規(guī)”選項(xiàng)頁面中的“用戶名”文本框內(nèi)輸入用戶名稱,如“susan”,如右圖所示。 任務(wù)1 操作步驟7 4、單擊“登錄名”右側(cè)的選擇按鈕,打開“選擇登錄名”對話框,點(diǎn)擊右側(cè)的“瀏覽”按鈕,打開“查找對象”對話框,選擇登錄名,如“studentuser1”,如左圖所示。返回“數(shù)據(jù)庫用戶-新建”對話框中,選擇賦給用戶的數(shù)據(jù)庫角色,在“數(shù)據(jù)庫角色成員身

5、份”列表框中選擇“student” ,完成新用戶創(chuàng)建,如右圖所示。任務(wù)1 操作步驟8拓展練習(xí)如何設(shè)置sa的密碼?兩種登錄模式有何區(qū)別?9知識說明Windows身份登錄模式(不需要提供特別的登錄密碼)SQL Server登錄模式(SQL Server登錄需要密碼)10任務(wù)2 使用SQL Server Management Studio授予用戶權(quán)限 【任務(wù)描述】 給學(xué)生課程數(shù)據(jù)庫的用戶Susan授予查看學(xué)生情況表、選課表、課程表的查看權(quán)限,并給相應(yīng)的列授予相應(yīng)的權(quán)限?!救蝿?wù)分析】用Management Studio、系統(tǒng)存儲過程、系統(tǒng)視圖、自定義腳本等等都可以確定你在SQL Server中的權(quán)限,

6、還有用功能強(qiáng)大的fn_my_permissions表值函數(shù)也能確定。 11任務(wù)2 操作步驟 1、啟動SQL Server Management Studio,在“對象資源管理器”窗口中選擇服務(wù)器,展開”數(shù)據(jù)庫學(xué)生課程安全性用戶“,右擊用戶名”Susan”,在彈出的快捷菜單中選擇“屬性”命令,如左圖所示。打開“數(shù)據(jù)庫用戶Susan”對話框,選擇“安全對象”頁,單擊“添加”按鈕,如右圖所示。12 2、打開“添加對象”對話框,選擇“特定對象”單選按鈕,然后單擊“確定按鈕,如左圖所示。在打開的 “選擇對象”對話框,單擊右側(cè)的“對象類型”按鈕。打開“選擇對象類型”對話框,在列表中選擇相應(yīng)的選項(xiàng),單擊確定

7、按鈕,如右圖所示。 任務(wù)2 操作步驟13 3、在“選擇對象”對話框中,單擊右側(cè)的“瀏覽”按鈕,打開“查找對象”對話框,選擇表Course等,然后單擊“確定“按鈕,如左圖所示。在“數(shù)據(jù)庫用戶Susan”對話框內(nèi),先選擇表Choice ,然后在對話框下方的student顯式權(quán)限列表框內(nèi)選擇Alter權(quán)限、Delete權(quán)限、Insert權(quán)限、Select權(quán)限,再進(jìn)一步設(shè)置“列權(quán)限”,如右圖所示。任務(wù)2 操作步驟144、打開“列權(quán)限”對話框,對相應(yīng)的列授予權(quán)限,如下圖所示任務(wù)2 操作步驟15知識說明登錄 1) 登錄是賬戶標(biāo)識符,用于連接到SQL SERVER 2005賬戶都稱為登錄。其作用是用來控制對

8、SQL Server 2005的訪問權(quán)限。SQL Server 2005只有在首先驗(yàn)證了指定的登錄賬號有效后,才完成連接。但登錄賬號沒有使用數(shù)據(jù)庫的權(quán)力,即SQL Server 2005登錄成功并不意味著用戶已經(jīng)可以訪問SQL Server 2005上的數(shù)據(jù)庫。 2) SQL Server 2005的登錄賬戶相應(yīng)有兩種:SQL 賬戶和Windows賬戶 例如,添加 Windows登錄帳戶 EXEC sp_grantlogin trainingS26301 -域名用戶名 添加 SQL登錄帳戶 EXEC sp_addlogin zhangsan, 1234 -用戶名,密碼 3) SQL Serve

9、r 2005中有兩個默認(rèn)的登錄賬戶:BUILTINAdministrators和sa。BUILTINAdministrators提供了對所有Windows 2005管理員的登錄權(quán)限,并且具有在所有數(shù)據(jù)庫中的所有權(quán)限。系統(tǒng)管理員(sa)是一個特殊的登錄賬戶,只有在SQL Server 2005使用混合驗(yàn)證模式時有效,它也具有在所有數(shù)據(jù)庫中的所有權(quán)限。 16知識說明登錄 1) 登錄是賬戶標(biāo)識符,用于連接到SQL SERVER 2005賬戶都稱為登錄。其作用是用來控制對SQL Server 2005的訪問權(quán)限。SQL Server 2005只有在首先驗(yàn)證了指定的登錄賬號有效后,才完成連接。但登錄賬號

10、沒有使用數(shù)據(jù)庫的權(quán)力,即SQL Server 2005登錄成功并不意味著用戶已經(jīng)可以訪問SQL Server 2005上的數(shù)據(jù)庫。 2) SQL Server 2005的登錄賬戶相應(yīng)有兩種:SQL 賬戶和Windows賬戶 例如,添加 Windows登錄帳戶 EXEC sp_grantlogin trainingS26301 -域名用戶名 添加 SQL登錄帳戶 EXEC sp_addlogin zhangsan, 1234 -用戶名,密碼 3) SQL Server 2005中有兩個默認(rèn)的登錄賬戶:BUILTINAdministrators和sa。BUILTINAdministrators提供

11、了對所有Windows 2005管理員的登錄權(quán)限,并且具有在所有數(shù)據(jù)庫中的所有權(quán)限。系統(tǒng)管理員(sa)是一個特殊的登錄賬戶,只有在SQL Server 2005使用混合驗(yàn)證模式時有效,它也具有在所有數(shù)據(jù)庫中的所有權(quán)限。 17知識說明 用戶 1)在數(shù)據(jù)庫內(nèi),對象的全部權(quán)限和所有權(quán)由用戶賬戶控制。 2)在安裝SQL Server后,默認(rèn)數(shù)據(jù)庫中包含兩個用戶:dbo和guest,即系統(tǒng)內(nèi)置的數(shù)據(jù)庫用戶 dbo代表數(shù)據(jù)庫的擁有者(database owner)。每個數(shù)據(jù)庫都有dbo用戶,創(chuàng)建數(shù)據(jù)庫的用戶是該數(shù)據(jù)庫的dbo,系統(tǒng)管理員也自動被映射成dbo。 3)guest用戶帳號在安裝完SQL Serv

12、er系統(tǒng)后被自動被加入到master、pubs、tempdb、和northwind數(shù)據(jù)庫中,且不能被刪除。用戶自己創(chuàng)建的數(shù)據(jù)庫默認(rèn)情況下不會自動加入guest帳號,但可以手工創(chuàng)建。guest用戶也可以像其他用戶一樣設(shè)置權(quán)限。當(dāng)一個數(shù)據(jù)庫具有g(shù)uest用戶帳號時,允許沒有用戶帳號的登錄者訪問該數(shù)據(jù)庫。所以guest帳號的設(shè)立方便了用戶的使用,但如使用不當(dāng)也可能成為系統(tǒng)安全隱患。 18知識說明 角色 1)在SQL Server 中,角色是管理權(quán)限的有力工具。將一些用戶添加到具體某種權(quán)限的角色中,權(quán)限在用戶成為角色成員時自動生效。 “角色”概念的引入方便了權(quán)限的管理,也使權(quán)限的分配更加靈活。 2)角

13、色分為服務(wù)器角色和數(shù)據(jù)庫角色兩種。服務(wù)器角色具有一組固定的權(quán)限,并且適用于整個服務(wù)器范圍。它們專門用于管理 SQL Server,且不能更改分配給它們的權(quán)限??梢栽跀?shù)據(jù)庫中不存在用戶帳戶的情況下向固定服務(wù)器角色分配登錄。 3)數(shù)據(jù)庫角色與本地組有點(diǎn)類似,它也有一系列預(yù)定義的權(quán)限,你可以直接給用戶指派權(quán)限,但在大多數(shù)情況下,只要把用戶放在正確的角色中就會給予它們所需要的權(quán)限。一個用戶可以是多個角色中的成員,其權(quán)限等于多個角色權(quán)限的“和”,任何一個角色中的拒絕訪問權(quán)限會覆蓋這個用戶所有的其他權(quán)限。19任務(wù)3 使用T-SQL語句創(chuàng)建、查看、刪除SQL Server登錄賬戶 【任務(wù)描述】 創(chuàng)建SQL

14、Server登錄賬號John,然后與student數(shù)據(jù)庫中的用戶studentuser2相關(guān)聯(lián),最后刪除登錄賬號John。【任務(wù)分析】 使用系統(tǒng)存儲過程來完成權(quán)限的管理。根據(jù)任務(wù)要求,先查看student數(shù)據(jù)庫中有沒有用戶studentuser2,如果無此用戶,要先創(chuàng)建。注意:最后要刪除與登錄名相關(guān)聯(lián)的數(shù)據(jù)庫用戶,才能刪除登錄賬戶。20任務(wù)3 源代碼Sp_addlogin John,wuygh1994,studentGoExec sp_helploginsUse studentExe sp_helpuserGoUse studentExec sp_grantdbaccess John,stud

15、entuser2GoExec sp_revokedbaccess studentuser2Exec sp_droplogin John21【任務(wù)描述】 使用T-SQL語句創(chuàng)建和管理數(shù)據(jù)庫用戶Peter。【任務(wù)分析】 創(chuàng)建用戶名時,必須關(guān)聯(lián)一個登錄名,可以分為三個子任務(wù): (1)使用CREATE USER語句,創(chuàng)建一個名為Peter的登錄名。 (2)創(chuàng)建用戶Peter,并將它與登錄名Peter進(jìn)行映射關(guān)聯(lián)。 (3)創(chuàng)建角色auditors,并將用戶Peter加入auditors角色中。 任務(wù)4 使用T-SQL語句創(chuàng)建和管理數(shù)據(jù)庫用戶及角色22任務(wù)4 操作步驟 USE student GO CRE

16、ATE LOGIN Peter WITH password=wuygh1994 CREATE USER Peter FOR LOGIN Peter GO CREATE ROLE auditors EXECUTE sp_addrolemember auditors,Peter23【任務(wù)描述】 授予用戶Peter查看student數(shù)據(jù)庫中course和teacher表的權(quán)限;然后拒絕Peter查看student數(shù)據(jù)庫中teacher的權(quán)限;撤消Peter查看student數(shù)據(jù)庫中course的權(quán)限?!救蝿?wù)分析】 根據(jù)任務(wù)要求,使用GRANT,DENY和REVOKE語句來完成權(quán)限的管理。 在SQL

17、Server中使用GRANT、DENY、REVOKE三條Transact-SQL語句來管理權(quán)限。 GRANT命令用于把權(quán)限授予某一用戶,以允許該用戶執(zhí)行針對某數(shù)據(jù)庫對象的操作或允許其運(yùn)行某些語句。DENY命令可以用來禁止用戶對某一對象或語句的權(quán)限,它不允許該用戶執(zhí)行針對數(shù)據(jù)庫對象的某些操作或不允許其運(yùn)行某些語句。REVOKE命令可以用來撤銷用戶對某一對象或語句的權(quán)限,使其不能執(zhí)行操作,除非該用戶是角色成員,且角色被授權(quán)。 任務(wù)4 使用T-SQL語句授予與收回用戶權(quán)限24任務(wù)5 源代碼USE studentGRANT SELECT ON course TO PeterGRANT SELECT O

18、N teacher TO PeterGODENY SELECT ON teacher TO PeterGOREVOKE SELECT ON course TO PeterGO25標(biāo)準(zhǔn)角色 Public :最基本的數(shù)據(jù)庫角色,每個用戶都屬于該角色 Db_owner:在數(shù)據(jù)庫中有全部權(quán)限 Db_accessadmin :可以添加或刪除用戶ID Db_securityadmin :可以管理全部權(quán)限、對象所有權(quán)、角色和角色成員資格 Db_ddladmin :可以發(fā)出所有DDL語句,但不能發(fā)出GRANT、REVOKE或DENY語句 26標(biāo)準(zhǔn)角色 Db_backupoperator:可以發(fā)出DBCC、CHECKPOINT和BACKUP語句 Db_dat

溫馨提示

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

評論

0/150

提交評論