數(shù)據(jù)庫《數(shù)據(jù)庫的安全與權限》實驗報告_第1頁
數(shù)據(jù)庫《數(shù)據(jù)庫的安全與權限》實驗報告_第2頁
數(shù)據(jù)庫《數(shù)據(jù)庫的安全與權限》實驗報告_第3頁
數(shù)據(jù)庫《數(shù)據(jù)庫的安全與權限》實驗報告_第4頁
數(shù)據(jù)庫《數(shù)據(jù)庫的安全與權限》實驗報告_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、xx大學計算機與信息技術學院實驗報告姓 名學 號專業(yè)班級課程名稱數(shù)據(jù)庫系統(tǒng)概論實驗日期成 績指導教師批改日期實驗名稱數(shù)據(jù)庫的安全與權限實驗內容目的和意義理解SQL Server身份驗證模式學會創(chuàng)建和管理登錄帳戶和用戶帳戶;學會創(chuàng)建和管理服務器角色和數(shù)據(jù)庫角色學會授予、拒絕和撤銷權限的方法實驗內容設置驗證模式,熟悉系統(tǒng)登錄驗證過程。登錄管理用戶管理角色管理權限管理實現(xiàn)步驟SQL Server 的安全管理 假若你是SQL Server2005數(shù)據(jù)庫服務器的管理員,服務器中包含7個用戶數(shù)據(jù)庫,它們?yōu)閷W校的多個部門應用程序提供數(shù)據(jù),每個部門的用戶維護自己的數(shù)據(jù)庫,你需要配置服務器和數(shù)據(jù)庫許可權限,讓每

2、個維護自己數(shù)據(jù)庫的用戶有足夠的權限來管理數(shù)據(jù)庫。你該怎么做呢?你需要為每個用戶創(chuàng)建一個賬戶,把每個賬戶映射到它們的數(shù)據(jù)庫中,添加所有的用戶賬戶到自己的數(shù)據(jù)庫中的db_owner角色中去。一、兩個安全性階段在SQL Server2005中工作時,用戶要經過兩個安全性階段:身份驗證和權限驗證(授權)。每個用戶必須通過登錄賬戶建立自己的連接能力(身份驗證),以獲得對SQL Server2005實例的訪問權限。然后,該登錄必須映射到用于控制在數(shù)據(jù)庫中所執(zhí)行的活動(權限驗證)的SQL Server用戶賬戶.如果數(shù)據(jù)庫中沒有用戶賬戶,則即使用戶能夠連接到SQL Server實例,也無法訪問數(shù)據(jù)庫。二、兩種

3、安全驗證模式SQL Server 提供了兩種安全驗證模式,即Windows身份驗證模式和混合身份驗證模式(也稱SQL Server身份驗證模式),數(shù)據(jù)庫設計者和數(shù)據(jù)庫管理員可以根據(jù)實際情況進行選擇。1、Windows身份驗證模式Windows身份驗證模式是指用戶通過Windows用戶賬戶連接到SQL Server,即用戶身份由Windows系統(tǒng)來驗證.SQL Server使用Windows操作系統(tǒng)中的信息驗證賬戶名和密碼。這是默認的身份驗證模式,比混合驗證模式安全得多。一般情況下,客戶機都支持混合信任連接,建議使用Windows身份驗證方式。使用Windows身份驗證有如下特點。(1)Wind

4、ows驗證模式下由Windows管理登錄賬戶,數(shù)據(jù)庫管理員主要是使用該賬戶。(2)Windows有功能很強的工具與技術去管理用戶的登錄賬戶。(3)可以在SQL Server中增加用戶組,可以使用用戶組。2、混合身份驗證模式(也稱SQL Server身份驗證模式)混合身份驗證模式允許用戶使用Windows身份和SQL Server身份進行連接。通過Windows登錄賬戶連接的用戶可以使用Windows驗證的受信任連接。當用戶使用指定的登錄名稱和密碼進行非信任連接時,SQL Server檢測輸入的登錄名和密碼是否與系統(tǒng)表syslogins中記錄的情況相同,據(jù)此進行身份驗證。如果不存在該用戶的登錄賬

5、戶,則身份驗證失敗。用戶只有提供正確的登錄名和密碼,才能通過SQL Server的驗證。提供SQL Server身份驗證是為了考慮非Windows客戶兼容及向后兼容,早期SQL Server的應用程序可能要求使用SQL Server登錄和密碼。當SQL Server實例在Windows98/Windows2000professional上運行時,由于Windows98/Windows2000professional不支持Windows身份驗證模式,必須使用混合模式.非Windows客戶端也必須使用SQL Server身份驗證?;旌仙矸蒡炞C模式有如下特點。(1)混合模式允許非Windows客戶、

6、Internet客戶和混合的客戶組連接到SQL Server中。(2)增加了完全性方面的選擇。如果必須選擇“混合身份驗證模式”并要求使用SQL登錄以適應舊式應用程序,則必須為所有SQL賬戶設置強密碼.這對于屬于sysadmin角色的賬戶(特別是sa賬戶)尤其重要。3、設置驗證模式安裝SQL Server2005默認的是Windows身份驗證模式。系統(tǒng)管理員在management studio中有兩種設置方法(參看實驗指導),均需要重新啟動SQL Server后,才能生效。三、登錄管理1、系統(tǒng)管理員登錄賬戶SQL Server有兩個默認的系統(tǒng)管理員登錄賬戶:sa和administrators。這

7、兩個登錄賬戶具有SQL Server系統(tǒng)和所有數(shù)據(jù)庫的全部權限.在安裝SQL Server之后,自動創(chuàng)建的登錄標識符只有系統(tǒng)管理員sa賬戶和administrators賬戶,administrators是Windows系統(tǒng)的系統(tǒng)管理員組。sa是一個特殊的登錄名,它代表SQL Server身份驗證機制下SQL Server的系統(tǒng)管理員,sa始終關聯(lián)dbo(dbo是默認的用戶賬號,就是指數(shù)據(jù)庫的創(chuàng)建者)數(shù)據(jù)庫用戶,并且沒有為sa指定口令.這意味著如果 SQL Server身份驗證模式,任何得知這個SQL Server存在的人都可以登錄到SQL Server上,并且可以做任意操作。為安全起見,在安裝

8、SQL Server后,應盡快地給系統(tǒng)管理員賬戶指定口令。為SQL Server系統(tǒng)管理員指定口令的步驟如下.(1)在“對象資源管理器"窗口中某數(shù)據(jù)庫引擎下.(2)分別展開“安全性”、“登錄名”節(jié)點,查看所有當前存在的登錄標示符,系統(tǒng)管理員賬戶sa應包含在其中。(3)右擊sa,然后選擇“屬性”項,系統(tǒng)彈出“登錄屬性”窗口。(4)在“密碼”一欄中輸入新的口令,并在“確認密碼”一欄再次輸入相同“密碼”。(5)在“默認數(shù)據(jù)庫”一欄輸入sa默認使用的數(shù)據(jù)庫.(6)單擊“確定”按鈕,系統(tǒng)關閉對話框,這樣完成了為系統(tǒng)管理員設置新口令操作。2、使用management studio 管理SQL S

9、erver登錄賬戶在management studio中能方便地創(chuàng)建、查看、修改、刪除登錄賬戶.有如下兩種方式創(chuàng)建SQL Server登錄賬戶(1和2)。(1)映射Windows登錄賬戶為SQL Server登錄賬戶 在management studio中可以將一個Windows賬戶或一個組映射成一個SQL Server登錄名。每個SQL Server登錄名都可以在指定的數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)庫用戶名。這個特性可以讓Windows組中的用戶直接訪問服務器上的數(shù)據(jù)庫。至于這些指定的數(shù)據(jù)庫用戶的權限,可以另行指定的.提示:Windows賬戶應是已經存在的。具體步驟(參看實驗指導)。(在用戶映射選項卡中,

10、選定某數(shù)據(jù)庫后用戶名默認與登錄名一樣,也可設定為不一樣的。)(2)在management studio中創(chuàng)建SQL Server登錄賬戶提示:首先需將驗證模式設置為SQL Server驗證模式.具體步驟參看實驗指導。(在用戶映射選項卡中,選定某數(shù)據(jù)庫后用戶名默認與登錄名一樣,也可設定為不一樣的。)注意:在創(chuàng)建登錄名時,在點擊“新建登錄名”后,進入“登錄名-新建”對話框時,選擇的默認數(shù)據(jù)庫要與用戶映射選項卡中選擇的數(shù)據(jù)庫一致,再去掉“強制實施密碼策略”的對勾即可創(chuàng)建成功。在通過新創(chuàng)建的登錄名連接SQL Server后,會發(fā)現(xiàn)只能訪問和打開所選的數(shù)據(jù)庫,而其他數(shù)據(jù)庫無法訪問和打開.(3)在Mana

11、gement Studio中查看、修改或刪除登錄賬戶具體步驟(參看實驗指導)四、用戶管理用戶是基于數(shù)據(jù)庫的名稱,是和登錄賬戶相關聯(lián)的.1、登錄名與數(shù)據(jù)庫用戶名的關系登錄名、數(shù)據(jù)庫用戶名是SQL Server中兩個容易混淆的概念。登錄名是訪問SQL Server的通行證.每個登錄名的定義存放在master數(shù)據(jù)庫的表syslogins(登錄名是服務器級的)中。登錄名本身并不能讓用戶訪問服務器中的數(shù)據(jù)庫資源.要訪問具體數(shù)據(jù)庫中的資源,還必須有該數(shù)據(jù)庫的用戶名.新的登錄創(chuàng)建以后,才能創(chuàng)建數(shù)據(jù)庫用戶,數(shù)據(jù)庫用戶在特定的數(shù)據(jù)庫內創(chuàng)建,必須和某個登錄名相關聯(lián).數(shù)據(jù)庫用戶的定義信息存放在與其相關的數(shù)據(jù)庫的sy

12、susers表(用戶名是數(shù)據(jù)庫級的)中的,這個表包含了該數(shù)據(jù)庫的所有用戶對象以及和它們相對應的登錄名的標識.用戶名沒有密碼和它相關聯(lián),大多數(shù)情況下,用戶名和登錄名使用相同的名稱,數(shù)據(jù)庫用戶名主要用于數(shù)據(jù)庫權限的控制。就如同企業(yè)門口先刷卡進入(登錄服務器),然后再拿鑰匙打開自己的辦公室(進入數(shù)據(jù)庫)一樣。數(shù)據(jù)庫用戶創(chuàng)建后,通過授予用戶權限來指定用戶訪問特定對象的權限。用戶用一個登錄名登錄SQL Server,以數(shù)據(jù)庫用戶的身份訪問服務器上的數(shù)據(jù)庫.當一個登錄賬戶試圖訪問某個數(shù)據(jù)庫時,SQL Server將在庫中的sysusers表中查找對應的用戶名,如果登錄名不能映射到數(shù)據(jù)庫的某個用戶,系統(tǒng)嘗試

13、將該登錄名映射成guest用戶,如果當前數(shù)據(jù)庫不許可guest用戶,這個用戶訪問數(shù)據(jù)庫將失敗.在SQL Server中,登錄賬戶和數(shù)據(jù)庫用戶是SQL Server進行權限管理的兩種不同的對象。一個登錄賬戶可以與服務器上的所有數(shù)據(jù)庫進行關聯(lián),而數(shù)據(jù)庫用戶是一個登錄賬戶在某數(shù)據(jù)庫中的映射,也即一個登錄賬戶可以映射到不同的數(shù)據(jù)庫,產生多個數(shù)據(jù)庫用戶(但一個登錄賬戶在一個數(shù)據(jù)庫至多只能映射一個數(shù)據(jù)庫用戶),一個數(shù)據(jù)庫用戶只能映射到一個登錄賬戶。允許數(shù)據(jù)庫為每個用戶分配不同的權限,這一特性為在組內分配權限提供了最大的自由度與可控性.2、使用Management Studio管理數(shù)據(jù)庫用戶管理數(shù)據(jù)庫用戶包

14、括對數(shù)據(jù)庫的創(chuàng)建、查看、修改、刪除等管理操作。首先如何創(chuàng)建數(shù)據(jù)庫用戶呢?一般有兩種方法。一種是在創(chuàng)建登錄帳戶的同時指定該登錄帳戶允許訪問的數(shù)據(jù)庫,同時生成該登錄帳戶在數(shù)據(jù)庫中的用戶.如前面使用Management Studio創(chuàng)建登錄帳戶時就能完成數(shù)據(jù)庫用戶的創(chuàng)建;另一種方法是先創(chuàng)建登錄帳戶,再將登錄帳戶映射到某數(shù)據(jù)庫,在其中創(chuàng)建同名用戶名(具體步驟參看實驗指導)。五、角色管理SQL Server 2005數(shù)據(jù)庫管理系統(tǒng)利用角色設置,管理用戶的權限。通過角色,可以將用戶集中到一個單元中,然后對這個單元應用權限。對角色授予、拒絕或吊銷權限時,將對其中的所有成員生效。角色的功能非常強大,其原因如下

15、。(1)除固定的服務器角色外,其他角色都是在數(shù)據(jù)庫內實現(xiàn)的。這意味著數(shù)據(jù)庫管理員無需依賴Windows管理員來組織用戶。(2)角色可以嵌套。嵌套的深度沒有限制,但不允循環(huán)嵌套。(3)數(shù)據(jù)庫用戶可以同時是多個角色的成員。這樣只對角色進行權限設置便可以實現(xiàn)對所有用戶權限的設置,大大減少了管理員的工作量。在SQL Server 2005中,可以認為有5中角色類型.1、public角色Public角色在每個數(shù)據(jù)庫(包括所有的系統(tǒng)數(shù)據(jù)庫)中都存在,它也是數(shù)據(jù)庫角色成員。Public角色提供數(shù)據(jù)庫中用戶的默認權限,不能刪除。每個數(shù)據(jù)庫用戶都自動是次角色的成員,因此,無法在此角色中添加或刪除用戶。當尚未對某

16、個用戶授予或拒絕對安全對象的特定權限時,則該用戶將繼承授予該安全對象在public角色中對應的權限。SQL Server 2005包括幾個預定義的角色,這些角色具有預定義的、不能授予其他用戶賬戶的內在的權限.其中有兩種最主要的預定義角色是:固定服務器角色和固定數(shù)據(jù)庫角色。2、固定服務器角色固定服務器角色的作用域在服務器范圍內。它們存在于數(shù)據(jù)庫之外,固定服務器角色的每個成員都能夠向該角色中添加其他登錄。打開Management Studio,用鼠標單擊“對象資源管理器”窗口中某數(shù)據(jù)庫引擎的“安全性"目錄下的“服務器角色",顯示當前數(shù)據(jù)庫服務器的所有服務器角色,共有8個,具體名

17、稱及角色描述如下。(1)bulkadmin角色成員:可以運行bulk insert語句。(2)dbcreator角色成員:可以創(chuàng)建、更改、刪除和還原任何數(shù)據(jù)庫。(3)diskadmin角色成員:用于管理磁盤文件。(4)processadmin角色成員:可以終止SQL Server實例中運行的進程。(5)securityadmin角色成員:將管理登錄名及其屬性。它們可以grant、deny和revoke服務器級權限。也可以grant、deny和revoke數(shù)據(jù)庫級權限。另外,它們可以重置SQL Server登錄名的密碼.(6)serveradmin角色成員:可以更改服務器范圍配置選項和關閉服務器

18、。(7)setupadmin角色成員:可以添加和刪除鏈接服務器,并且也可以執(zhí)行某些系統(tǒng)存儲過程。(8)sysadmin角色成員:可以在服務器中執(zhí)行任何活動。默認情況下,windows administrators組(即本地管理員組)的所有成員都是sysadmin固定服務器角色的成員.固定服務器角色成員的添加與刪除(有兩種方法,具體步驟參看實驗指導)3、數(shù)據(jù)庫角色固定數(shù)據(jù)庫角色在數(shù)據(jù)庫級別定義以及每個數(shù)據(jù)庫中都存在.Db_owner和db_security管理員角色的成員可以管理固定數(shù)據(jù)庫角色的成員身份.但是,只有Db_owner角色可以將其他用戶添加到Db_owner固定數(shù)據(jù)庫角色中.打開Ma

19、nagement Studio,用鼠標單擊“對象資源管理器"窗口中某數(shù)據(jù)庫下的“安全性”目錄下的“角色"的“數(shù)據(jù)庫角色”,顯示的所有數(shù)據(jù)庫角色,共有10個,具體名稱及角色描述如下。(1)db_accessadmin:可以為Windows登錄賬戶、Windows組和SQL Server登錄賬戶添加或刪除訪問權限.(2)db_backupoperator:可以備份該數(shù)據(jù)庫.(3)db_datareader:可以讀取所有用戶表中的所有數(shù)據(jù)。(4)db_datawriter:可以在所有用戶表中添加、刪除或更改數(shù)據(jù).(5)db_ddladmin:可以在數(shù)據(jù)庫中運行任何數(shù)據(jù)定義語言(D

20、DL)命令。(6)db_denydatareader:不能讀取數(shù)據(jù)庫內用戶表中的任何數(shù)據(jù)。(7)db_denywriter:不能添加、修改或刪除數(shù)據(jù)庫內用戶表中的任何數(shù)據(jù)。(8)db_owner:可以執(zhí)行數(shù)據(jù)庫的所有配置和維護活動。(9)db_securityadmin:可以修改角色成員身份和管理權限。固定數(shù)據(jù)庫角色到權限有映射關系,請參閱聯(lián)機幫助查詢。固定數(shù)據(jù)庫角色與固定服務器角色不能被刪除,用戶自定義的角色可以刪除.4、用戶定義的角色當一組用戶執(zhí)行SQL Server中一組指定的活動時,通過用戶定義的角色可以輕松地管理數(shù)據(jù)庫中的權限.在沒有合適的Windows組,或數(shù)據(jù)庫管理員無權管理Wi

21、ndows用戶賬戶的情況下,用戶定義的角色為數(shù)據(jù)庫管理員提供了與Windows組同等的靈活性。用戶定義的角色只適用于數(shù)據(jù)庫級別,并且只對創(chuàng)建時所在的數(shù)據(jù)庫起作用。(1)數(shù)據(jù)庫角色創(chuàng)建、修改與刪除(具體步驟參看實驗指導)(2)數(shù)據(jù)庫角色成員的添加與刪除(具體步驟參看實驗指導)5、應用程序角色(略,不作要求)六、權限管理(數(shù)據(jù)庫應用技術SQL Server2005提高篇,參看復印資料)設置安全驗證模式-Windows身份驗證模式-默認的系統(tǒng)管理員登錄賬戶:administrators。 Windows身份 混合身份驗證模式 SQL Server身份-默認的系統(tǒng)管理員登錄賬戶:sa創(chuàng)建SQL Ser

22、ver登錄賬戶-映射Windows登錄賬戶為SQL Server登錄賬戶 將驗證模式設為SQL Server驗證模式,在management studio中創(chuàng)建SQL Server登錄賬戶數(shù)據(jù)庫A-1- 用戶名a1 用戶名b登錄名a 1 數(shù)據(jù)庫B-1- 用戶名a 1 用戶名b登錄名b 數(shù)據(jù)庫C1- 用戶名a 用戶名b1. 驗證模式安裝SQL Server 2005默認的是Windows身份驗證模式。可能使用Management Studio工具來設置驗證模式,但設置驗證模式的工作只能由系統(tǒng)管理員來完成,以下是在Management Studio中的兩種設置方法,以下兩種方法均需要重新啟動SQL

23、 Server后,才能生效。方法之一:(1)打開Management Studio。(2)在“已注冊的服務器”子窗口中要設置驗證模式的服務器上單擊鼠標右鍵,然后在彈出的快捷菜單上選擇“屬性”項,系統(tǒng)彈出“編輯服務器注冊屬性”窗口。(3)在“常規(guī)”選項卡中,“服務器名稱"欄按“服務器名<實例名>”格式選擇要注冊的服務器實例“身份驗證”欄在連接到 SQL Server實例時,可以使用兩種身份驗證模式:Windows身份驗證和SQL Server身份驗證(或稱混合身份驗證)。如圖4-1。 (4)設置完成后,單擊“測試"按鈕以確定設置是否正確。(5)單擊“保存"

24、;按鈕,單擊對話窗口,完成驗證模式的設置或改變。方法之二:(1)在Management Studio對象資源管理器中,右鍵單擊服務器,再單擊“屬性”項。(2)在“安全性”頁上的“服務器身份驗證”下,選擇新的服務器身份驗證模式,再單擊“確定”按鈕。如圖4-3。2。 帳號和角色1)登錄管理 使用Management Studio管理SQL Server登錄賬戶(1)映射Windows Studio登錄賬戶為SQL Server登錄賬戶在Management Studio中可以將一個Windows賬戶或一個組映射成一個SQL Server登錄名。每個SQL Server登錄名都可以在指定的數(shù)據(jù)庫中創(chuàng)

25、建數(shù)據(jù)庫用戶名。這個特性可以讓Windows組中的用戶直接訪問服務器上的數(shù)據(jù)庫。至于這些指定的數(shù)據(jù)庫用戶的權限,可以另行指定的。使用Management Studio將已經存在的Windows賬戶或組映射到SQL Server中的操作步驟如下: 啟動Management Studio,分別展開“服務器”、“安全性"、“登錄名”。 右擊“登錄名”,選擇“新建登錄名"項,進入“登錄名新建”對話框. 選擇Windows驗證模式,登錄名通過按“搜索”按鈕來自動產生,單擊“搜索"按鈕后“選擇用戶或組"對話框,在對象名稱框內直接輸入名稱或單擊“高級”按鈕后查找用戶或

26、組的名稱來完成輸入。 單擊“服務器角色”選項卡,可以查看或更改登錄名在固定服務器角色中的成員身份。 單擊“用戶映射"選項卡,以查看或修改SQL登錄名到數(shù)據(jù)庫用戶的映射,并可選擇其在該數(shù)據(jù)庫中允許擔任的數(shù)據(jù)庫角色。單擊“確定"按鈕,一個Windows組或用戶即可增加到SQL Server登錄賬戶中去了。(2)在Management Studio中創(chuàng)建SQL Server登錄賬戶在Management Studio中創(chuàng)建SQL Server登錄賬戶的具體步驟類似于“在Management Studio中映射Windows登錄賬戶為SQL Server登錄賬戶”,只是,要選擇SQ

27、L Server驗證模式,這是需要輸入登錄賬戶名稱、密碼及確認密碼。其他選項卡的設置操作類似。最后按“確定”按鈕,即增加了一個新的登錄賬戶。(3)在Management Studio中查看、修改或刪除登錄賬戶一個新的登錄賬戶增加后,可以在Management Studio中查看其詳細信息,并能做修改或刪除操作.方法如下: 啟動Management Studio,分別展開“服務器”、“安全性"、“登錄名"。如圖4-3。 單擊“登錄名"下的某一個登錄賬戶,在系統(tǒng)彈出菜單上單擊“屬性"項,可進入“登錄屬性"對話框查看該登錄賬戶的信息,同時需要時能直接

28、修改相應賬戶設置信息. 在上一步系統(tǒng)彈出菜單上單擊“刪除”菜單,能出現(xiàn)“刪除對象"對話框,在對話框上單擊“確定”按鈕,能刪除該登錄賬戶.2)用戶管理使用Management Studio管理數(shù)據(jù)庫用戶管理數(shù)據(jù)庫用戶包括對數(shù)據(jù)庫的創(chuàng)建、查看、修改、刪除等管理操作。首先如何創(chuàng)建數(shù)據(jù)庫用戶呢?一般有兩種方法。一種是在創(chuàng)建登錄帳戶的同時指定該登錄帳戶允許訪問的數(shù)據(jù)庫,同時生成該登錄帳戶在數(shù)據(jù)庫中的用戶。如前面使用Management Studio創(chuàng)建登錄帳戶時就能完成數(shù)據(jù)庫用戶的創(chuàng)建;另一種方法是先創(chuàng)建登錄帳戶,再將登錄帳戶映射到某數(shù)據(jù)庫,在其中創(chuàng)建同名用戶名。(1)在Management

29、Studio中創(chuàng)建數(shù)據(jù)庫用戶在Management Studio中創(chuàng)建數(shù)據(jù)庫用戶中創(chuàng)建數(shù)據(jù)庫用戶的步驟如下:啟動Management Studio,分別展開“服務器”、“數(shù)據(jù)庫"、“KCGL"、“安全性"、“用戶”,在“用戶"文件夾下能看到該數(shù)據(jù)庫的已有用戶.右擊“用戶"文件夾,選擇“新創(chuàng)建數(shù)據(jù)庫用戶”,彈出“數(shù)據(jù)庫用戶新建”對話框。輸入要創(chuàng)建的數(shù)據(jù)庫用戶的名字,然后再“登陸名"對應的文本框中輸入相對應的登錄名,或單擊“瀏覽"按鈕,在系統(tǒng)中選擇相應的登錄名.單擊“確定”按鈕,將新創(chuàng)建的數(shù)據(jù)庫用戶添加到數(shù)據(jù)庫中。(2)在Man

30、agement Studio中查看、修改或刪除數(shù)據(jù)庫用戶 操作方式是:啟動Management Studio,分別展開“服務器"、“數(shù)據(jù)庫”、“KCGL”、“安全性"、“用戶",在“用戶”文件夾下能看到該數(shù)據(jù)庫的已有用戶.右擊某要操作的用戶,在系統(tǒng)彈出的快捷菜單中含有“屬性”、“刪除"等菜單項.若選擇“屬性"菜單項,可以查看或修改用戶的權限信息,如“常規(guī)”中的“擁有架構”“角色成員";“安全對象”中的具體權限設置及“擴展屬性"等.若選擇“刪除"菜單項,可從數(shù)據(jù)庫中刪除該用戶。3)角色管理固定服務器角色成員的添加與刪

31、除 固定服務器角色成員的添加與刪除操作可以通過Management Studio或TSQL兩種方法來操作.在Management Studio中添加或刪除固定服務器角色成員。:方法一:打開Management Studio,用鼠標單擊“對象資源管理器”窗口某數(shù)據(jù)庫引擎-“安全性”-“服務器角色",顯示當前數(shù)據(jù)庫服務器的所有服務器角色,再要添加或刪除成員的某固定服務器角色上單擊鼠標右鍵,選擇快捷菜單中的“屬性”菜單項。在“服務器角色屬性”對話框中,能方便單擊“添加"或“刪除”按鈕實現(xiàn)對成員的添加或刪除.方法二:打開Management Studio,用鼠標單擊”對象資源管理器

32、“窗口-某數(shù)據(jù)庫引擎”安全性“"登錄名“;在某登錄名上右擊,選擇"屬性“菜單項,出現(xiàn)”登陸屬性“對話框或單擊”新建登錄名“出現(xiàn)”登陸新建"對話框;單擊“服務器角色”選項卡,能直接多項選擇登陸名需要屬于的固定服務器角色。這樣也完成了對固定服務器角色成員的添加與刪除.用戶定義的角色(1)數(shù)據(jù)庫角色創(chuàng)建、修改與刪除 數(shù)據(jù)庫角色的創(chuàng)建、修改與刪除操作可以通過Management Studio或TSQL兩種方法來操作。在Management Studio中創(chuàng)建、修改與刪除數(shù)據(jù)庫角色:打開Management Studio,用鼠標單擊”對象資源管理器“窗口某數(shù)據(jù)庫引擎>

33、”數(shù)據(jù)庫“>”某具體數(shù)據(jù)庫">”安全性“>”角色“->”數(shù)據(jù)庫角色”,顯示當前數(shù)據(jù)庫的所有數(shù)據(jù)庫角色,在”數(shù)據(jù)庫角色“目錄或某數(shù)據(jù)庫角色上單擊鼠標右鍵,單擊快捷菜單中的”新建數(shù)據(jù)庫據(jù)角色“菜單項。在”數(shù)據(jù)庫角色-新建“對話框中,指定角色名稱與所有者,單擊”確定“按鈕即簡單創(chuàng)建了新的數(shù)據(jù)庫角色.在某數(shù)據(jù)庫角色上單擊鼠標右鍵,單擊快捷菜單中的”屬性“菜單項。在”數(shù)據(jù)庫角色屬性“對話框中,查閱或修改角色信息,如制定新的所有者、安全對象、擁有的架構、角色、角色成員等信息的修改等。在某自定義數(shù)據(jù)庫角色上單擊鼠標右鍵,單擊快捷菜單中的“刪除”菜單項。啟動“刪除對象&quo

34、t;來刪除數(shù)據(jù)庫角色。但要注意:角色必須為空時才能刪除。(2)數(shù)據(jù)庫角色成員的添加與刪除 數(shù)據(jù)庫角色成員的添加及與刪除操作可以通過Management Studio或T-SQL兩種方法來操作.在Management Studio中添加與刪除數(shù)據(jù)庫角色成員:方法一:在上面提到過的某數(shù)據(jù)庫角色的“數(shù)據(jù)庫角色屬性“對話框中,“常規(guī)”選線卡上,右下角色成員操作區(qū),單擊“添加”或“刪除”按鈕實現(xiàn)操作。方法二:通過“對象資源管理器”窗口>某數(shù)據(jù)庫引擎-“數(shù)據(jù)庫”-“某具體數(shù)據(jù)庫”->“安全性"-”用戶""某具體用戶”;單擊鼠標右擊,單擊“屬性”菜單,出現(xiàn)“數(shù)據(jù)庫用

35、戶"對話框,在右下角色成員操作區(qū),通過多選按鈕直接實現(xiàn)該用戶從某個或某些數(shù)據(jù)庫角色中添加或刪除的操作功能.應用程序角色 在Management Studio中創(chuàng)建與刪除數(shù)據(jù)庫程序角色: 通過“對象資源管理器”窗口->”數(shù)據(jù)庫引擎”>”數(shù)據(jù)庫"->”某具體數(shù)據(jù)庫”安全性"”角色"-”應用程序角色”;單擊油表有機,單擊“新建應用程序角色"菜單項,出現(xiàn)“應用程序角色新建"對話框,在”常規(guī)“選項卡右邊指定角色名稱默認架構、密碼、確認密碼、角色擁有的架構等信息后,單擊"確定“按鈕即可。當然在創(chuàng)建應用程序角色的同時,可

36、以指定”安全對象“、”擴展屬性“選項卡中的屬性。 在已有某應用程序角色上單擊鼠標右鍵,再單擊“刪除”菜單項,能實現(xiàn)角色的刪除操作。3。 權限管理1)在Management Studio中管理權限在Management Studio中管理權限是非常方便的,可以從權限相關的主體與安全對象這兩者的任意一方出發(fā)考慮實現(xiàn)操作.2)在Management Studio中管理憑據(jù)(1)創(chuàng)建憑據(jù)在對象資源管理器中,展開“安全性”,右擊“憑據(jù)”,然后單擊“新建憑據(jù)"項。 在“新建憑據(jù)” 對話框中的“憑據(jù)名稱”框中,輸入憑據(jù)的名稱.在“標識”框中,輸入對于對外連接的賬戶名稱(在離開SQL Server的

37、上下文時)。通常為Windows用戶賬戶.但標識可以是其他類型的賬戶。在“密碼”和“確認密碼”框中,輸入“標識"框中指定的賬戶的密碼.如果“標識”為Windows用戶賬戶,則密碼為Windows密碼。如果不需要密碼,“密碼”可為空。單擊“確定”按鈕.(2)將登錄名映射到憑據(jù)在對象資源管理器中,展開“安全性”,右擊SQL Server登錄名,然后單擊“屬性”項.在“登錄屬性”對話框的“常規(guī)"頁的“憑據(jù)"框中,輸入憑據(jù)的名稱,然后單擊“確定”按鈕。3)用TSQL命令管理權限主要命令有GRANT、REVOKE、DENY、CREATE CREDENTIAL、ALTER C

38、REDENTIAL、DROP CREDENTIAL等.(1)GRANT將安全對象的權限授予主體. GRANT命令的簡單語法: GRANTALLPRIVILEGES permission(column,.n) ,.。.nONclass::securableTO principal ,.。nWITH GRANT OPTIONAS principal ALL:該選項并不授予全部可能的權限.授予ALL參數(shù)相當于授予以下權限.如果安全對象為數(shù)據(jù)庫,則ALL表示BACKUP DATABASE、BACKUP LOG、CREATE DATABASE、CREATE DRFAULT、CREATE FUNCTION

39、、CREATE PROCEDURE、CREATETABLE和CREATE VIEW。如果安全對象為標量函數(shù),則ALL表示EXECUTE和REFERENCES。如果安全對象為表值函數(shù),則ALL表示DELETE、INSERT、REFERENCES、SELECT和UPDATE。 如果安全對象為存儲過程,則ALL表示DELETE、EXECUTE、INSERT、SELECT和UPDATE。如果安全對象為表,則ALL表示DELETE、INSERT、REFERENCES、SELECT和UPDATE。如果安全對象為視圖,則ALL表示DELETE、INSERT、REFERENCES、SELECT和UPDATE。

40、Permission:權限的名稱。Column:指定表中將授予其權限的列的名稱。需要使用括號“( )"。Class:指定將授予其權限的安全對象的類。需要范圍限定符“:”。Securable:指定將授予其權限的安全對象。 TO principal:主體的名稱。可為其授予安全對象權限的主體隨安全對象而異。 GRANT OPTION:指示被授權者在獲得指定權限的同時還可以將指定權限授予其他主體。AS principal:指定一個主體,執(zhí)行該查詢的主體從該主體獲得授予該權限的權利。REVOKE語句可用于刪除已授予的權限,DENY語句可用于防止主體通過GRANT獲得特定權限.授予權限將刪除對所

41、指定安全對象的相應權限的DENY或REVOKE權限。如果在包含該安全對象的更高級別拒絕了相同的權限,則DENY優(yōu)先。但是,在更高級別撤銷已授予權限的操作并不優(yōu)先.數(shù)據(jù)庫級權限在指定的數(shù)據(jù)庫范圍內授予。如果用戶需要另一個數(shù)據(jù)庫中的對象的權限,請在該數(shù)據(jù)庫中創(chuàng)建用戶賬戶,或者授權用戶賬戶訪問該數(shù)據(jù)庫以及當前數(shù)據(jù)庫. 數(shù)據(jù)庫特定安全對象有:應用程序角色、程序集、非對稱密鑰、證書、約定、數(shù)據(jù)庫、端點、全文目錄、函數(shù)、登錄、消息類型、對象、隊列、遠程服務綁定、角色、路由、架構、服務器、服務、存儲過程、對稱密鑰、同義詞、系統(tǒng)對象、表、類型、用戶、視圖、XML架構集合。Sp_helprotect系統(tǒng)存儲過程

42、可報告對數(shù)據(jù)庫級安全對象的權限。(2)GRANT對象權限.授予對表、視圖、表值函數(shù)、存儲過程、擴展存儲過程、標量函數(shù)、聚合函數(shù)、服務隊列或同義詞的權限,語法如下:GRANT permission,nONOBJECT:schema_name。object_name (column ,n)TO database_principal> ,n WITH GRANT OPTION AS <database_principal>:=ALLPRIVILEGESpermission(column,n)<database_principal:=Database_userDatabase_

43、roleApplication_role|Database_user_mapped_to_Windows_User Database_user_mapped_to_Windows_Group|Database_user_mapped_to_cerificate|Database_user_mapped_to_asymmetric_keyData_user_with_no_loginPermission:指定可以授予的對架構包含的對象的權限。ALL:授予ALL不會授予所有可能的權限.授予ALL等同于授予適用于指定對象的所有ANSI-92權限.對于不同權限,ALL的含義有所不同。 標量函數(shù)權限:E

44、XECUTE和REFERENCES. 表值函數(shù)權限:DELETE、INSERT、REFERENCES、SELECT和UPDATE. 存儲過程權限:EXECUTE 、SYNONYM、DELETE、INSERT、SELECT和UPDATE。 表權限:DELETE、INSERT、REFERENCES、SELECT和UPDATE。 視圖權限:DELETE、INSERT、REFERENCES、SELECT和UPDATE。Database_user指定數(shù)據(jù)庫用戶;Database_role指定數(shù)據(jù)庫角色;Application role指定應用程序角色;Database_user_mapped_to_Wi

45、ndows_User指定映射到Windows用戶的數(shù)據(jù)庫用戶;Database_user_mapped_to Windows_Group指定映射到Windows組的數(shù)據(jù)庫用戶;Database_user_mapped_to_cerificate指定映射到證書的數(shù)據(jù)庫用戶;Database_user_mapped_to_asymmetric_key指定映射到非對稱密鑰的數(shù)據(jù)庫用戶;Data_user_with_no_login指定無相應服務器級主體的數(shù)據(jù)庫用戶。對象是一個架構級的安全對象,包含于權限層次結構中作為其父級的架構中 GRANT命令的使用實例:例1: 授予對表的SELECT權限,本例授

46、予用戶RosaQdM對AdventureWorks數(shù)據(jù)庫中表Person。Address的SELECT權限。 USE AdventureWorks GRANT SELECT ON OBJECT::Person。Address TO RosaQdM 例2:授予對存儲過程的EXECUTE權限,本例授予名Recruiting 11的應用程序角色對存儲過程HumanResources。uspUpdateEmployeeHireInfo的EXECUTE權限。 GRANT EXECUTE ON OBJECT::HumanResources。uspUpdateEmployeeHireInfo TO Recr

47、uiting 11(3)REVOKE取消以前授予或拒絕了的權限。 REVOKE簡單語法: REVOKE GRANT OPTION FOR ALL PRIVILEGES|permission(column,n),n ONclass:securableTOFROMprincipal,nCASCADEAS principalREVOKE對象權限有:撤銷對表、視圖、表值函數(shù)、存儲過程、擴展存儲過程、標量函數(shù)、聚合函數(shù)、服務隊列或同義詞的權限。語法如下:REVOKE GRANT OPTION FOR permission ,n ON OBJECT:: schema_ name。object_name (

48、coloumn,n) FROMTO database_principal ,n CASCADE AS<database_principal> REVOKE命令的使用實例:例:撤銷對表的SELECT權限,本例從用戶RosaQdM中撤銷對AdventureWorks數(shù)據(jù)庫中表Person。Address的SELECT權限.REVOKE SELECT ON OBJECT:Person。Address FROM RosaQdM用TSQL令管理權限的例子1給用戶授權:a)use database_coursecreate login user3 with password=';cre

49、ate user user3 for login user3;b)grant update(sno),selecton scto user1;2?;厥諜嘞蓿篴)revoke update(sno)on scfrom user1;b)revoke selecton SCfrom public;3。數(shù)據(jù)庫角色:a)create role r1;grant select,insert,updateon courseto r1;將角色r1授予user1、user2、user3:grant VIEW DEFINITION,TAKE OWNERSHIP on role::r1 to user1,user2,user3;一次性的通過r1回user1的3個權限:revoke VIEW DEFINITION,TAKE OWNERSHIP on role:r1 from user1;回收user2對于r1的控制權限:

溫馨提示

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

評論

0/150

提交評論