數(shù)據(jù)庫原理實驗3數(shù)據(jù)庫的安全性_第1頁
數(shù)據(jù)庫原理實驗3數(shù)據(jù)庫的安全性_第2頁
數(shù)據(jù)庫原理實驗3數(shù)據(jù)庫的安全性_第3頁
數(shù)據(jù)庫原理實驗3數(shù)據(jù)庫的安全性_第4頁
數(shù)據(jù)庫原理實驗3數(shù)據(jù)庫的安全性_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一、 實驗目的1. 掌握Windows 認證模式下數(shù)據(jù)庫用戶帳號的建立與取消方法;2. 掌握混合模式下數(shù)據(jù)庫用戶帳號的建立與取消方法;3. 掌握數(shù)據(jù)庫用戶權限的設置方法;4. 熟悉數(shù)據(jù)庫數(shù)據(jù)庫用戶帳號的權限分配、回收等方法;5. 了解數(shù)據(jù)庫角色的分類、作用及使用方法。二、 實驗環(huán)境SQL Server 企業(yè)版三、實驗學時2學時三、 實驗原理:1. Microsoft® SQL Server 可以在兩種安全(身份驗證)模式: (1)Windows 身份驗證模式(Windows 身份驗證) Windows 身份驗證模式使用戶得以通過 Microsoft Windows NT®

2、4.0 或 Windows® 2000 用戶帳戶進行連接。(2)混合模式(Windows 身份驗證和 SQL Server 身份驗證) 混合模式使用戶得以使用 Windows 身份驗證或 SQL Server 身份驗證與 SQL Server 實例連接。在 Windows 身份驗證模式或混合模式下,通過 Windows NT 4.0 或 Windows 2000 用戶帳戶連接的用戶可以使用信任連接。2. SQLerver的安全機制(1)服務器級別所包含的安全對象主要有登錄名、固定服務器角色等。其中登錄名用于登錄數(shù)據(jù)庫服務器,而固定服務器角色用于給登錄名賦予相應的服務器權限。SQL S

3、erver 中的登錄名主要有兩種:第一種是Windows登錄名,第二種是SQL Server登錄名。Windows登錄名對應Windows驗證模式,該驗證模式所涉及的賬戶類型主要有Windows本地用戶賬戶、Windows域用戶賬戶、Windows組。SQL Server登錄名對應SQL Server驗證模式,在該驗證模式下,能夠使用的賬戶類型主要是SQL Server賬戶。(2)數(shù)據(jù)庫級別所包含的安全對象主要有用戶、角色、應用程序角色、證書、對稱密鑰、非對稱密鑰、程序集、全文目錄、DDL事件、架構等。用戶安全對象是用來訪問數(shù)據(jù)庫的。如果某人只擁有登錄名,而沒有在相應的數(shù)據(jù)庫中為其創(chuàng)建登錄名所

4、對應的用戶,則該用戶只能登錄數(shù)據(jù)庫服務器,而不能訪問相應的數(shù)據(jù)庫。(3)架構級別所包含的安全對象主要有表、視圖、函數(shù)、存儲過程、類型、同義詞、聚合函數(shù)等。架構的作用簡單地說是將數(shù)據(jù)庫中的所有對象分成不同的集合,這些集合沒有交集,每一個集合就稱為一個架構。數(shù)據(jù)庫中的每一個用戶都會有自己的默認架構。這個默認架構可以在創(chuàng)建數(shù)據(jù)庫用戶時由創(chuàng)建者設定,若不設定則系統(tǒng)默認架構為dbo。數(shù)據(jù)庫用戶只能對屬于自己架構中的數(shù)據(jù)庫對象執(zhí)行相應的數(shù)據(jù)操作。至于操作的權限則由數(shù)據(jù)庫角色所決定。一個數(shù)據(jù)庫使用者,想要登錄服務器上的SQL Server數(shù)據(jù)庫,并對數(shù)據(jù)庫中的表執(zhí)行數(shù)據(jù)更新操作,則該使用者必須經過如下圖所示

5、的安全驗證。3.數(shù)據(jù)庫的存取控制:授權和撤銷權限(1)GRANT在安全系統(tǒng)中創(chuàng)建項目,使當前數(shù)據(jù)庫中的用戶得以處理當前數(shù)據(jù)庫中的數(shù)據(jù)或執(zhí)行特定的 Transact-SQL 語句語法:1)語句權限:GRANT ALL | statement ,.n TO security_account ,.n 2)對象權限:GRANT ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) | ON stored_procedure | extended_procedure

6、| ON user_defined_function TO security_account ,.n WITH GRANT OPTION AS group | role (2)REVOKE刪除以前在當前數(shù)據(jù)庫內的用戶上授予或拒絕的權限。語法語句權限:REVOKE ALL | statement ,.n FROM security_account ,.n 對象權限:REVOKE GRANT OPTION FOR ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n

7、 ) | ON stored_procedure | extended_procedure | ON user_defined_function TO | FROM security_account ,.n CASCADE AS group | role 五、實驗內容及步驟以系統(tǒng)管理員身份登錄到SQL Server服務器,在SQL Server2005界面中實現(xiàn)以下操作,并獨立寫出68題的程序代碼;1. 在當前計算機中增加一個用戶zhang和cheng,密碼為secret。使此用戶通過winows NT模式下登錄SQL Server服務器,登錄名分別為zhang和cheng;(對象資源管理器安

8、全性登錄名單擊右鍵“新建登錄名”然后如下圖: 單擊確定)(在登錄名下面就會出現(xiàn)新的用戶登錄名zhang和cheng,重新啟動SQL Server Management Studio,就可以使用“SQL Server身份驗證”方式使用登錄名和密碼,成功連接SQL Server Management Studio。)2. 新建以混合模式登錄SQL Server服務器的用戶登錄名為stu1、stu2和stu3,登錄密碼為secret,默認登錄數(shù)據(jù)庫為stu;(和第一題相同的做法,只不過在新建登錄名時將默認數(shù)據(jù)庫設置為stu,然后設置用戶映射為“Stu”數(shù)據(jù)庫。)3. 將帳號zhang添加為數(shù)據(jù)庫st

9、u的用戶,用戶名為zhang;(右鍵單擊賬號“zhang”屬性用戶映射設置如下圖)4. 在數(shù)據(jù)庫stu中創(chuàng)建用戶stu1、stu2和stu3,登錄帳號分別為stu1、stu2和stu3;(同步驟三)5. 給數(shù)據(jù)庫用戶zhang賦予創(chuàng)建數(shù)據(jù)庫的權限;(數(shù)據(jù)庫stu安全性右鍵單擊數(shù)據(jù)庫用戶“zhang”屬性安全對象單擊“添加”特定類型的所有對象確定-數(shù)據(jù)庫確定。 在權限設置中在“Create database”后面的授予中打勾,確定。)6. 給數(shù)據(jù)庫用戶stu1賦予對sc表進行插入、修改、刪除操作權限;(對象資源管理器數(shù)據(jù)庫“Stu”安全性用戶stu1屬性安全對象添加特定類型的所有對象確定表確定。

10、 選擇表sc,在權限設置中在“Delete、Insert、Update”后面的授予中打勾確定。)7. 給數(shù)據(jù)庫用戶stu2和stu3賦予對student表、course表所有操作權限及查詢sc的操作權限,并允許再授權給其他用戶;(對象資源管理器數(shù)據(jù)庫“Stu”安全性用戶stu2屬性安全對象添加特定類型的所有對象確定表確定。 選擇表student,在權限設置中所有的授予和具有授予權限中打勾;表course執(zhí)行相同的操作;對于表sc,在去權限設置Select的授予和授予權限中打勾;確定。)對于用戶stu3執(zhí)行與stu2相同的操作。8. 收回數(shù)據(jù)庫用戶stu2對student表和course表的刪除

11、操作的權限;(只要在用戶stu2的安全對象設置中把student表和course表的設置權限中的Delete中的授予中的對號去掉就可以了。)revoke delete on student from stu2 cascaderevoke delete on course from stu2 cascade9. 若一個小組共5個成員,他們對數(shù)據(jù)庫stu具有相同的操作權限,具體權限如下:1) 對于student、course表只能進行數(shù)據(jù)查詢;2) 只能對student表中sname進行更改;3) 對于sc表只能進行修改、刪除或插入;(先將登錄名中的賬號“cheng”的用戶映射設置為數(shù)據(jù)庫stu,

12、然后執(zhí)行 對象資源管理器數(shù)據(jù)庫stu安全性角色數(shù)據(jù)庫角色新建數(shù)據(jù)庫角色角色名稱為“NEW”,所有者為“dbo”角色成員添加瀏覽選擇五個數(shù)據(jù)庫用戶確定確定。)數(shù)據(jù)庫角色“NEW”屬性安全對象添加特定類型的所有對象確定表確定。 對于表student和表course在權限設置中在“Selete”后面的授予中打勾; 對于表sc在權限設置中在“Delete、Insert、Update”后面的授予中打勾; 同時在表student權限設置中在“Update”后面的授予中打勾,然后點擊“列權限”,在列Sname后面的授予中打勾,確定。10. 將登錄帳號cheng同時擁有服務器角色serveradmin 和 s

13、ecurityadmin的權限;登錄名cheng屬性服務器角色選擇服務器角色serveradmin 和 securityadmin確定。11. 刪除服務器角色sysadmin的成員stu2和stu3;安全性服務器角色sysadmin屬性選擇角色成員stu2單擊刪除按鈕選擇角色成員stu3單擊刪除按鈕確定。六、樣例模板一.用戶的創(chuàng)建(用戶包括操作系統(tǒng)用戶、服務器用戶和數(shù)據(jù)庫用戶)1. 創(chuàng)建操作系統(tǒng)用戶u1、u2以管理員的身份登錄到Windows,打開“控制面板”(Win7)中的“用戶賬戶”,創(chuàng)建操作系統(tǒng)用戶u1、u2。2. 創(chuàng)建數(shù)據(jù)服務器用戶GUI方式(SQL Server2008為例):以DB

14、A的身份登錄到SQL Server Management Studio,在對象資源管理器中選擇“安全性”,右擊“登錄名”,在彈出的快捷菜單中選擇“新建登錄名”菜單選項,在“新建登錄名”窗口中單擊“搜索”按鈕添加Windows用戶u1,選擇“Windows身份驗證模式”,單擊“確定”按鈕完成。(1) 命令方式:use mastercreate login LISHUO-PCu1 from windows(2) 同樣的方式將操作系統(tǒng)用戶u2、u3加入到數(shù)據(jù)服務器。3. 創(chuàng)建數(shù)據(jù)庫用戶以系統(tǒng)管理員身份登錄到數(shù)據(jù)庫服務器,分別以GUI方式和命令方式創(chuàng)建數(shù)據(jù)庫用戶(1) GUI方式(SQL Server

15、2008為例):選中stu_end數(shù)據(jù)庫,單擊“安全性”,在其“用戶”節(jié)點下右擊,在彈出的快捷菜單中選擇“新建用戶”菜單項,在“數(shù)據(jù)庫用戶”窗口中輸入要新建的數(shù)據(jù)庫用戶名和登錄名,單擊“確定”按鈕。(2) 命令方式:use stu_endgocreate user stu_end_login01 for login LISHUO-PCu1 go(3)查看stu_end_login01的屬性,此用戶除了擁有默認架構外,沒有分配相應權限。(3) 切換到操作系統(tǒng)用戶u1,以u1的身份登錄到SQL Server Management Studio,這時可以使用命令打開數(shù)據(jù)庫stu_end。如下圖:此時

16、,以stu_end數(shù)據(jù)庫用戶stu_end_login01訪問數(shù)據(jù)庫stuinfo,訪問被拒接。一、 數(shù)據(jù)庫角色管理這里只討論固定數(shù)據(jù)庫角色。1. 以界面方式為固定數(shù)據(jù)庫角色添加成員:在stu_end數(shù)據(jù)庫中展開“安全性”à角色à數(shù)據(jù)庫角色,選擇“db.owner”,在彈出的快捷菜單中選擇“屬性”菜單項,進入“數(shù)據(jù)庫角色屬性”窗口,單擊“添加”按鈕。2. 命令方式:使用系統(tǒng)的存儲過程use stu_endgosp_addrolemember 'db_owner','stu_end_login01'此時,可以訪問數(shù)據(jù)庫的數(shù)據(jù)庫對象,如下圖:select * from s update s set sage=25 where sname='胡海燕 ' select * from s 切換到DBA,取消stu_end_login01的所有的角色,此時只能打開數(shù)據(jù)庫,而不能訪問數(shù)據(jù)庫對象,如下圖:二、 數(shù)據(jù)庫的權

溫馨提示

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

評論

0/150

提交評論