201509實(shí)驗(yàn)三數(shù)據(jù)庫(kù)的安全性_第1頁(yè)
201509實(shí)驗(yàn)三數(shù)據(jù)庫(kù)的安全性_第2頁(yè)
201509實(shí)驗(yàn)三數(shù)據(jù)庫(kù)的安全性_第3頁(yè)
201509實(shí)驗(yàn)三數(shù)據(jù)庫(kù)的安全性_第4頁(yè)
201509實(shí)驗(yàn)三數(shù)據(jù)庫(kù)的安全性_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、實(shí)驗(yàn)三:數(shù)據(jù)庫(kù)的安全性 一、實(shí)驗(yàn)?zāi)康?熟悉通過SQL對(duì)數(shù)據(jù)進(jìn)行安全性控制。二、實(shí)驗(yàn)平臺(tái) SQL Server 2008三、實(shí)驗(yàn)內(nèi)容和要求1、掌握Windows登錄名和SQL SERVER登錄名的建立與刪除方法;2、掌握數(shù)據(jù)庫(kù)用戶創(chuàng)建與管理的方法;3、掌握服務(wù)器角色的用法;4、掌握數(shù)據(jù)庫(kù)權(quán)限授予、拒絕和撤銷的方法;四、實(shí)驗(yàn)步驟(一)授權(quán)與回收。例1授權(quán)。在 SQL Sever 中建立多個(gè)用戶,給他們賦予不同的權(quán)限,然后查看是否真正擁有被授予的權(quán)限了。1)建立用戶 U1、U2、U3、U4、U5、U6、U7。2)以系統(tǒng)管理員身份對(duì)這7個(gè)用戶進(jìn)行授權(quán)。例 1-1把查詢 Student 表的權(quán)限授給用戶

2、 U1。GRANT SELECTON StudentTO U1; 例 1-2把對(duì) Student 表和 Course 表的全部操作權(quán)限授予用戶 U2 和 U3。GRANT ALL PRIVILEGES ON StudentTO U2,U3;GRANT ALL PRIVILEGES ON Course TO U2,U3;例 1-3把對(duì)表 SC 的查詢權(quán)限授予所有用戶。GRANT SELECTON SCTO PUBLIC; 例 1-4把查詢 Student 表和修改學(xué)生學(xué)號(hào)的權(quán)限授給用戶 U4。GRANT UPDATE (Sno) , SELECTON StudentTO U4; 例 1-5把對(duì)表

3、 SC 的 INSERT 權(quán)限授予 U5,并允許 U5 將此權(quán)限再授予其他用戶。GRANT INSERT ON SCTO U5 WITH GRANT OPTION;例 1-6用戶 U5 將對(duì)表 SC 的 INSERT 權(quán)限授予 U6,并允許將權(quán)限轉(zhuǎn)授給其他用戶。首先應(yīng)該以 U5 的身份重新登錄數(shù)據(jù)庫(kù),然后再進(jìn)行授權(quán)。 GRANT INSERT ON SC TO U6 WITH GRANT OPTION;例 1-7用戶 U6 將對(duì)表 SC 的 INSERT 權(quán)限授予 U7。首先應(yīng)該以 U6 的身份重新登錄數(shù)據(jù)庫(kù),然后再進(jìn)行授權(quán)。GRANT INSERT ON SCTO U7; 3)在授權(quán)之后驗(yàn)證

4、用戶是否擁有了相應(yīng)的權(quán)限。在執(zhí)行完上面七個(gè)語(yǔ)句之后,我們可以分別以不同用戶的身份登錄數(shù)據(jù)庫(kù),進(jìn)行相關(guān)操作,檢查系統(tǒng)是否許可。例如:例 1-8U4 更新 Student 表的學(xué)生學(xué)號(hào)。UPDATE StudentSET SNO = 95101WHERE SNO = 95001;顯示更新 1 條記錄,即 U4 用戶擁有了對(duì) Student 表 Sno 的更新權(quán)限。例 1-9U7 向 SC 表中插入一條數(shù)據(jù):(95020,20,88)。INSERT INTO SC VALUES(95020,20,88);顯示插入 1 條記錄,即用戶 U7 擁有了對(duì) SC 表的插入權(quán)限。例2回收權(quán)限。將例 1授予的權(quán)

5、限部分收回,檢查回收后,該用戶是否真正喪失了對(duì)數(shù)據(jù)的相應(yīng)權(quán)限。1)回收權(quán)限。例 2-1收回用戶 U4 修改學(xué)生學(xué)號(hào)的權(quán)限。當(dāng)前用戶為 SYSTEM,直接執(zhí)行下列語(yǔ)句:REVOKE UPDATE (SNO) ON StudentFROM U4;例 2-2收回所有用戶對(duì)表 SC 的查詢權(quán)限。REVOKE SELECTON SCFROM PUBLIC;例 2-3收回用戶 U5 對(duì) SC 表的 INSERT 權(quán)限。將權(quán)限 INSERT 授予給用戶 U5 時(shí),允許該用戶將權(quán)限再授予給其他用戶;之后,用戶U5 將 INSERT 權(quán)限轉(zhuǎn)授給了 U6,U6 又將權(quán)限轉(zhuǎn)授給 U7。因此,將用戶 U5 的 INS

6、ERT 權(quán)限收回的時(shí)候必須級(jí)聯(lián)收回,不然系統(tǒng)將拒絕執(zhí)行該命令: REVOKE INSERT ON TABLE SC FROM U5 CASCADE;執(zhí)行該命令之后,U6 從 U5 處獲得的權(quán)限也將被收回,U7 從 U6 處獲得的權(quán)限也將同時(shí)被收回。2)在回收權(quán)限之后驗(yàn)證用戶是否真正喪失了該權(quán)限。例 2-4用戶 U3 查詢表 SC。首先用戶 U3 重新登錄數(shù)據(jù)庫(kù) TEST。執(zhí)行命令:SELECT *FROM SC;執(zhí)行失敗,該用戶不擁有此權(quán)限。證實(shí)用戶 U3 喪失了對(duì)表 SC 查詢的權(quán)限。例 2-5用戶 U6 向表 SC 中插入一條記錄(95035,3,92)。首先用戶 U6 重新登錄數(shù)據(jù)庫(kù) T

7、EST。執(zhí)行命令:INSERT INTO SC VALUES(95035,3,92);執(zhí)行失敗,該用戶不擁有此權(quán)限。證實(shí)用戶 U6 喪失了從用戶 U5 處獲得的對(duì)表 SC 插入的權(quán)限。(二)數(shù)據(jù)庫(kù)角色。例 3角色的創(chuàng)建與授權(quán)。例 3-1創(chuàng)建角色 G1。CREATE ROLE G1;例 3-2給角色授權(quán),使得角色 G1 擁有對(duì) Student 表的 SELECT、UPDATE、INSERT 的權(quán)限。GRANT SELETE,UPDATE,INSERTON STUDENTTO G1;例 3-3將用戶 U1,U3,U7 添加到角色 G1 中來(lái)。EXEC sp_addrolemember G1,u1E

8、XEC sp_addrolemember G1,u2EXEC sp_addrolemember G1,u3將 U1,U3,U7 添加到角色 G1 中之后,U1,U3,U7 就擁有了 G1 擁有的所有權(quán)限,即對(duì)Student 表的 SELECT、UPDATE、INSERT 的權(quán)限。例 3-4對(duì)角色 G1 的權(quán)限進(jìn)行修改,增加對(duì) Student 表的 DELETE 權(quán)限,并回收對(duì) Student表的 INSERT 權(quán)限。GRANT DELETEON STUDENTTO G1;REVOKE INSERTON STUDENTFROM G1;例 3-5刪除角色 G1。DROP ROLE G1; 5、 實(shí)

9、驗(yàn)任務(wù) 利用實(shí)驗(yàn)二建立的students數(shù)據(jù)庫(kù)和其中的student、course、sc表,完成下列操作:1、建立SQL Server身份驗(yàn)證模式的登錄賬戶:log1、log2和log3;(命令方式創(chuàng)建)CREATE LOGIN log1 WITHPASSWORD='821742'GOCREATE LOGIN log2 WITHPASSWORD='821742'GOCREATE LOGIN log3 WITHPASSWORD='821742'GO2、 用log1新建一個(gè)數(shù)據(jù)庫(kù)引擎查詢,這時(shí)在“可用數(shù)據(jù)庫(kù)”下列列表框中是否能選中students數(shù)據(jù)

10、庫(kù)?為什么?3、 將log1、log2和log3映射為students數(shù)據(jù)庫(kù)中的用戶,用戶名同登錄名;(命令方式創(chuàng)建)USE students GO CREATE USER log1FOR LOGIN log1USE students GO CREATE USER log2FOR LOGIN log2USE students GO CREATE USER log3FOR LOGIN log34、 在log1建立的數(shù)據(jù)庫(kù)引擎查詢中,在“可用數(shù)據(jù)庫(kù)”下列列表框中選中students數(shù)據(jù)庫(kù),是否成功?為什么?能,因?yàn)槭谟枇藱?quán)限。5、在log1建立的數(shù)據(jù)庫(kù)引擎查詢中,執(zhí)行下述語(yǔ)句,能否成功?為什么?

11、select * from course不能,因?yàn)長(zhǎng)og1所在的數(shù)據(jù)庫(kù)沒有賦予查詢權(quán)限。6、 授予log1具有course表的查詢權(quán)限,授予log2具有course表的插入權(quán)限;7、用log2建立一個(gè)數(shù)據(jù)庫(kù)引擎查詢,然后執(zhí)行下述兩條語(yǔ)句,能否成功?為什么? Insert into course values(c101,java,2,3) Insert into course values(c102,操作系統(tǒng),4,4)能,因?yàn)長(zhǎng)og2賦予了插入權(quán)限。再次執(zhí)行下述語(yǔ)句,能否成功?為什么? select * from course不能,因?yàn)閘og2只有插入的權(quán)限,沒有查詢權(quán)限。8、 在log1建立的

12、數(shù)據(jù)庫(kù)引擎查詢中,再次執(zhí)行下述語(yǔ)句: select * from course這次能否成功?為什么?能,因?yàn)閘og1賦予的是查詢功能。讓log1執(zhí)行下述語(yǔ)句,能否成功?為什么? Insert into course values('c103','軟件工程',4,6)不能,因?yàn)長(zhǎng)og1所在的數(shù)據(jù)庫(kù)沒有賦予查詢權(quán)限。9、 在students數(shù)據(jù)庫(kù)中建立用戶角色:role1,并將log1和log2添加到此角色中。10、 授予role1角色具有course表的插入、刪除和查詢權(quán)限;11、 在log1建立的數(shù)據(jù)庫(kù)引擎查詢中,再次執(zhí)行下述語(yǔ)句,能否成功?為什么? Inser

13、t into course values(c103,軟件工程,4,6)不能,因?yàn)長(zhǎng)og1所在的數(shù)據(jù)庫(kù)沒有賦予查詢權(quán)限。12、 在log2建立的數(shù)據(jù)庫(kù)引擎查詢中,再次執(zhí)行下述語(yǔ)句,能否成功?為什么? select * from course不能,因?yàn)長(zhǎng)og2所在的數(shù)據(jù)庫(kù)沒有賦予查詢權(quán)限。13、 用log3建立一個(gè)數(shù)據(jù)庫(kù)引擎查詢,并執(zhí)行下述語(yǔ)句,能否成功?為什么? select * from course不能,因?yàn)長(zhǎng)og3所在的數(shù)據(jù)庫(kù)沒有賦予查詢權(quán)限。14、 將log3添加到db_datareader角色中,并在log3建立的數(shù)據(jù)庫(kù)引擎查詢中再次執(zhí)行下述語(yǔ)句,能否成功?為什么? select * from course15、 在log3建立的數(shù)據(jù)庫(kù)引擎查詢中,執(zhí)行下述語(yǔ)句,能否成功?為什么? Insert into course va

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論