第13章數(shù)據(jù)庫安全保護_第1頁
第13章數(shù)據(jù)庫安全保護_第2頁
第13章數(shù)據(jù)庫安全保護_第3頁
第13章數(shù)據(jù)庫安全保護_第4頁
第13章數(shù)據(jù)庫安全保護_第5頁
已閱讀5頁,還剩95頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)的安全性管理是數(shù)據(jù)庫服務器應實現(xiàn)的重要功能之 一。數(shù)據(jù)的安全性是指保護數(shù)據(jù)以防 止不合法的使用而造成數(shù)據(jù)的泄密和破壞 。SQL Server 2008數(shù)據(jù)庫采用了復雜的安全保護措施, 其安全管理體現(xiàn)在對用戶登錄進行身份驗證,對 用戶的操作進行權限控制 。本章主要介紹數(shù)據(jù)庫的登錄、角色以及權限管理 。第13章數(shù)據(jù)庫的安全保護教學目標 :安全性對于任何數(shù)據(jù)庫管理系統(tǒng)來說都是至關重要的, SQL Server 2008提供有效的數(shù)據(jù)訪問安全機制,本 章主要從用戶、角 色和權限方面進行安全性的分析和操作 。教學提示 :通過本章的學習,讀者應該掌握 SQL Serv由2- 008服務器的安全性機制及

2、其運 用。并熟練掌握創(chuàng)建和管理安全賬戶、管理數(shù)據(jù)庫用戶、角色及權限 。13. 1 數(shù)據(jù)庫安全性控制數(shù)據(jù)庫管理系統(tǒng)的安全性通常包括兩個方面 一是指數(shù)據(jù)訪問的安全性 ; 二是指數(shù)據(jù)運行的安全性 ( 數(shù)據(jù)庫維護 :災難恢復等) 。數(shù)據(jù)訪問的安全性 是指設計和實現(xiàn)數(shù)據(jù)庫資 源的授權訪問,即設計和實現(xiàn)授權的 用戶在指定 的時間、指定或允許的 地點( 計算機) 、 授 權 的 訪 問方式訪問數(shù)據(jù)庫中的指定的數(shù)據(jù)資源。SQL Server 2008 的安全認證模式當用戶使用SOL Server 2008 時,需要經(jīng)過兩個 安全性階段,身份驗證階段和權限認證階段 。(1) 身份驗證階段 :用戶在SOL Ser

3、ver 2008上獲得對 任何數(shù)據(jù)庫的訪問權限之前,必須登錄到 SOL Server 2008上,并且被認為是合法的 。(2) 權限認證階段 :然后需要檢測用戶是否有訪問服務 器上數(shù)據(jù)的權限,為此需要授予每個數(shù)據(jù)庫中映射到 用戶登錄的帳戶訪問權限,權限認證就可以控制用戶 數(shù)據(jù)庫進行操作。安全認證模式 1翩 翩 身份驗證Windows 身份驗證模式Wind。ws身份驗證模式是使用 Windows 操作系統(tǒng)的安全機制來驗證用戶身份,只要用戶能夠通過 Windows用戶身份驗證,即可連接到 SQL Server 2008服務器上,在其他操作系統(tǒng)下無法使用。 混合身份驗證模式混合身份驗證模式使用戶可以

4、使用 Windows 身份驗證或SQL Server 身份驗證與SQL (Server仨2008服務器連接。它將區(qū)分用戶賬號在 Wirtd。 而s操作系統(tǒng)下是否可信,對于可信的連接用戶系統(tǒng),直接采用Wind。身份驗證模式,否則,wsSQL Server 2008會通過賬戶的存在性和密碼的匹配性自行進行驗證SQL Server 安全性決策樹 :使 用 客 戶 應 用 程 序 埠接 到 S Q L ServerW i n d o w s身 份驗 證 模 式混 合 模 式N oS Q L Server 拒 絕 連 接S Q L S erver 拒 絕 連接S Q L S erv er 接 受 連 接

5、1. Windows身份驗證模式Wind。ws身份驗證模式是指要登錄到 SQL Server系統(tǒng)的用戶身份由 Windows 系統(tǒng)來進行驗證,即,在SQL Server 中可以創(chuàng)建與Wind。ws用戶賬號對應的登錄賬號,采用這種方式驗證身份,只要登錄了Wind。ws操作系統(tǒng),登錄 SQL Server 時就不需要再輸入一次賬號和密碼了。但是,所有能登錄 W. ind。ws操作系統(tǒng)的賬號不 一定都能訪問SQL, Server o必須要由數(shù)據(jù)庫管理員在SQL Server 中創(chuàng)建與Wind。賬號對應的SQLwsServer賬號,然后用該 Windows賬號登錄Wind。操ws作系統(tǒng),才能直接訪問

6、SQL Server 。SQL Server2008默認本地Windows可以不受限制地訪問數(shù)據(jù)庫。2. SQL Server 混合驗證模式混合驗證模式允許以 SQL Server身份驗證模 式或者Windows 身份驗證模式來進行身份驗證, 能更好的適應用戶的各種環(huán)境 。SQL Server身份驗證模式是輸入登錄名和密碼來登錄數(shù)據(jù)庫服務器,SQL Server在系統(tǒng)注冊表中檢測輸入的登錄名和密碼,如果正確,則可以登陸到SQLServer上 。這些登錄名和密碼與Wind。ws操作系統(tǒng)無關 。使用SQL Server身份驗證時,設置密碼對于確保系統(tǒng)的安全性至關重要。設置身份驗證模式設置身份認證模

7、式 :1. SQLServer2008 安裝時設置2. 選 中服務器一屬性一一 安全性一 一 修改模式(需要重啟服務器才能 生效)修改身份認證模式 : 選中服務器一 右鍵一 屬性 安全性選項卡一 修改 模式選擇安全認證模式 連接數(shù)據(jù)庫啟動SQL Server Management Studi時選擇同卒字寫原尹尹l8JSQLServer 2oosM仲Windows Server 句stem數(shù) 據(jù) 庫 引 擎而頁。03服 務 器 類 型 :服 務 器 名 稱 毯 上 身 份 驗 證 也 ;量景名也 :密 碼 也 :1SQL S e r v e r 身 份 驗 證監(jiān)蹤工旦旦戴忠串串串串串串串串串串串

8、事串串串、 ,回 記住誓碼 Qd)醋 。l I取 消門幫 助選項 安全認證模式 2一權限認證為防止不合理的使用造成數(shù)據(jù)的泄密和破壞, SQL Server 2008數(shù)據(jù)庫管理系統(tǒng)除使用身份驗 證方法來限制用戶進入數(shù)據(jù)庫系統(tǒng)外,還使用權 限認證來控制用戶對數(shù)據(jù)庫的操作。當用戶身份通過驗證連接到 SQL S. e.四er 2008 服務器后,在用戶可以訪問的每個數(shù)據(jù)庫中都要 求單獨的用戶賬號,對于沒有賬戶的數(shù)據(jù)庫,將 無法訪問。13.2 用戶和角色管理SQL Server 的安全防線中突出兩種管理 :1.對用戶或角色的管理,即控制合法 用戶使用數(shù)據(jù)庫;2.對權限管理 ,即控制具有數(shù)據(jù)操作權的用戶進

9、行合法 的數(shù)據(jù)存取操作。用戶是具有合法身份 的數(shù)據(jù)庫使用者, 有一定權限的用戶組合 。SQL Server 的用戶或角色分為 二級:1. 服務器級用戶或角色2. 數(shù)據(jù)庫級用戶或角色 。角色是具數(shù)據(jù)庫安全性管理SQLServer2008 提供以下4層安全防線 :1. 操作系統(tǒng)的安全防線(系統(tǒng)級)網(wǎng)絡管理員負責建立用戶組,設 置賬號并注冊 , 系統(tǒng)資源的訪問級別2. SQLServer 的運行安全防線(服務器級)用戶登錄賬號3. SQLSer,ver 數(shù)據(jù)庫的安全防線(數(shù)據(jù)庫級) 特定數(shù)據(jù)庫自己的用戶賬戶和角色4. SQLServer數(shù)據(jù)庫對象的安全防線(對象級)用戶必須在自己的權限范圍內進行數(shù)據(jù)

10、操作數(shù)據(jù)庫用戶管理 思路帳號設置順序 :1. 用戶登錄帳號(大樓鑰匙)2 .與用戶登錄帳號一一對應的用戶帳號(房間 鑰匙)3.數(shù)據(jù)對象的權限(抽屜鑰匙) GRAN.町授權) 語句和REVdK恒 (收權 ) 語句 或SSMS管理器用戶管理1 登錄帳戶登錄帳戶:是進入服務器的第一張通行證例如默認: sae p :系統(tǒng)管理員SystemAdministrators ,具有最高權限特殊登錄賬戶 sa:SQL Server數(shù)據(jù)庫服務器系統(tǒng)管理員 登錄賬戶。不要輕易刪除、更改,可以設置密碼。該賬戶擁有最高的管理權限,密碼提供給用戶 。不要輕易將sa的 PC?Administrators :一個Window

11、s 組賬戶,凡屬于該組的 Windowsm長戶都可作為SQL Server 的登錄賬戶, 尸 ! 可刪除。 建議用戶刪除,防止他人借 Wind。ws賬戶登錄 。重要提示 :一經(jīng)刪除,無法恢復,除非重新安裝創(chuàng)建登錄賬戶1.使用對象資源管理器創(chuàng)建 SQL Server 2008登錄賬戶選中登錄名 一右鍵一新建登錄名一選擇混合模 式一輸入密碼一取消用戶在下次登錄時必須修改密碼的 選項 (因為當前版本不支持此功能)一確認【例13-1】 使用h iSeriver Managernen_ t Studio創(chuàng)建登錄賬號T EST/1約,登錄名 密碼。創(chuàng)建登錄賬戶2.使用系統(tǒng)存儲過程創(chuàng)建登錄賬戶使用系統(tǒng)存儲過

12、程 sp_addlogin創(chuàng)建登錄賬號的語法格式如下 :EXECsp_addlogin 登錄名 , 密 碼 , 默認數(shù)據(jù)庫 默認語言【 例1】 建立一個名為 b- ook :Jogin 的登錄賬號,并將登錄賬號加入到J Library數(shù)據(jù)庫中,即能連接 Library數(shù)據(jù)庫。EXEC sp_addloginbook_login , Library 添加登錄名 ,不知道密碼 , 無法登錄用戶管理1創(chuàng)建登錄賬戶案例【 例13-2】 使用系統(tǒng)存儲過程 sp_addlogin創(chuàng)建三個登錄賬號XYZ/123 、ABC/123 和AAA/123 0【 例2】 建立SQl. 1 SERyi,E幣 ?Q08登

13、錄賬號為 m!L l ,pgin, 密碼為默認數(shù)據(jù)庫為 Lib aty rUSE LibraryEXEC sp_addlogin my_I。gin , 111 , Library添加登錄名 ,知道密碼, 可以登錄EXEC sp_addloginXYZ, 123EXEC sp_addloginABC,123EXEC sp_addloginAAA , 123修改登錄賬號修改登錄賬號密碼 :【例13-3】使用SQl-Car. , . . . . f-.,.-吃Studio修改登錄T氈A可以改所有登錄賬 戶的密碼 ,非sa權限用戶登錄系統(tǒng)時只能改自 己的密碼 !456123 。f(, .一 、口 vv

14、 Y飛 飛、唁EXEC sp_passw 。rd可京 問 . , ( 新密碼 登 錄 名 刪除登錄賬號 :1.使用對象資源管理器刪除 登錄賬號【 例13-4】使用SQL Server Management Studi。刪除 登陸賬號XYZ/123 02.使用存儲過程刪除登錄賬號 使用存儲過程sp_droplogin可刪除某一登錄賬號,語法:EXECSp_droplogin 登錄賬戶【 例13-5】 使用系統(tǒng)存儲過程 sp_droplogin刪除登錄 賬號ABC/123 。EXECsprt Ppgirin A- BG【 例3】 從數(shù)據(jù)庫Library中刪除b_login登錄賬號EXEC sp_d

15、r。ploginb_I。gin當?shù)卿涃~戶刪除而對于的 用戶賬戶未刪除時,用 戶賬戶就成為無登錄賬戶對應的孤 兒賬戶,無法使用。 解決辦法 :1.重新創(chuàng)建登錄賬戶如 :b_newlogin2.使用存儲過程,重新連接 沓錄賬號與用戶賬戶( 如:b_us號 。 EXECsp_change rsjl1。gin Update一 ne , b_user1 , b_newrogin用戶管理2數(shù)據(jù)庫用戶能夠登錄到SQL Server , 并 不 表明一定可以訪問 數(shù)據(jù)庫,登錄用戶只有成為數(shù)據(jù)庫用戶后才能訪問數(shù)據(jù) 庫 。在一個數(shù)據(jù)庫中,用戶賬號唯 一標識一個用戶,用 戶對數(shù)據(jù)庫的訪問權限以及對數(shù)據(jù)庫對象的所有關

16、系都 是通過用戶賬號來控制的。 一般來說,登錄賬號和用戶 賬號相同,方便操作,登錄賬號和用戶賬號也可以不同 名,而且一個 登錄賬號可以關聯(lián)多 個用戶賬號 。每個登錄賬號在一個數(shù)據(jù)庫中只能有一個用戶賬號。 管理員可以對SQL Server 2008 中的數(shù)據(jù)庫用戶賬號進行創(chuàng)建、修改和刪除。創(chuàng)建數(shù)據(jù)庫用戶賬號1.使用SSMS創(chuàng)建數(shù)據(jù)庫用戶【例13-6】使用SQL ServerManagement Studio創(chuàng)建Library數(shù)據(jù)庫 的一個用戶賬號U_ 1。創(chuàng)建數(shù)據(jù)庫用戶賬號2.使用系統(tǒng)存儲過程創(chuàng)建數(shù)據(jù)庫用戶賬戶1)使用sp_grantdbaccess 語法格式為 :EXEC sp grantdb

17、access登錄賬戶 4 用戶賬戶【例13-6】 使用系統(tǒng)存儲過程 sp_grantdbaccess 創(chuàng)建 Library數(shù)據(jù)庫的一個用戶賬號 U2,關聯(lián)的登錄名為 AAA 。USE LibraryEXEC sp_grantdbaccessAAA , U2創(chuàng)建數(shù)據(jù)庫用戶賬號2.使用系統(tǒng)存儲過程創(chuàng)建數(shù)據(jù)庫用戶賬戶2 )使用sp_adduser語法格式 :Execsp_adduser 登錄名稱 , 用戶賬號 , 數(shù)據(jù)庫角色記 ,錄在P.196頁例13-6邊上【 例4】為登錄名b一 login在Library數(shù)據(jù)庫中 ,添加一個名為b user1 的用戶賬號 。EXEC sp_addloginb_l

18、ogin , 111 , LibraryGOEXEC sp_adduser b一 login , b_user1, db_owner一 添加用戶b_user1, 具有db_owner魚魚4 的權限1.數(shù)據(jù)庫的四層防線是什么?2.登錄賬號有密碼嗎?3.用戶賬號有密碼嗎?4.登錄賬號與用戶賬號有何關系?5.列舉本章常用的存儲過程名稱?提示1:創(chuàng)建的數(shù)據(jù)庫用戶如果沒有賦 予角色,則該用戶登錄時僅能看到數(shù)據(jù) 庫的框架,不能看到內容。如果選擇角色如:db_owner , 則將具有訪問處理該數(shù)據(jù)庫的全部權限。提示2:用sp_adduser 創(chuàng)建用戶,默認創(chuàng) 建同名的架構。如果要刪除 sp_adduser創(chuàng)

19、建的用戶,必須使用sp_rev。kedbaccess刪除,或者使用管理器 先刪除架構再刪除用戶 。 參 見【例5】管理器創(chuàng)建的用戶則不創(chuàng)建同名架構, 刪除時直接刪除用戶即可。架構是形成一個單獨的命名空間的數(shù)據(jù)庫對象(諸如: 表、視圖、存儲過程和觸發(fā)器等)的集合 。SQLServer 中的架構的的主要好處是,架構和用 戶可以是不同的實體,用戶名不再是對象名的一部分, 不同于SQLServer 以前的版本,因此可以在不改變應 用程序的情況下刪除用戶或更改用戶名 。每個架構都 被一個用戶或角色擁有 。刪除用戶必須先刪除架構或將架構所有權從要刪 除的用戶和角色轉移到另一個新用戶或角色后就可以 進行刪除

20、操作 。選中賬戶 右鍵 屬性 修改【 例13-8】 使用SQL Server ManagementStudi修改Library數(shù)據(jù)庫的用戶賬號 U1。刪除數(shù)據(jù)庫用戶賬號name表示被刪除的用戶賬號 。其中:1.使用對象資源管理器刪除用戶賬號提示 :刪除用戶必須先刪除架構或將架構所以權從要刪 除的用戶和角色轉移到另一個新 用戶或角色后就可以進 行刪除操作。2.使用sp_revokedbaccess可刪除用戶 賬號,同時刪除同名的架構語法格式為 :sp_revokedbaccess name刪除數(shù)據(jù)庫用戶賬號【例13-9】 使用SQL Server Management Studi。刪除Libra

21、ry數(shù)據(jù)庫的用戶賬號 U2?!纠?3-10】 使用系統(tǒng)存儲過程 sp_rev。kedbaccess 實現(xiàn)【例13”的要求。EXEC sp_revokedbaccessU2【 例5】從L;rary數(shù)據(jù)庫中刪除EXEC sp_revokedbaccess b_login_usertqg!n_user用戶 。use Library用戶管理3角色管理角色是一種權限機制。SQL Server管理員可以將某些用戶設置為某一角色,這樣只對角色進 行權限設置便可實現(xiàn)對多個用戶權限的設置,便 于管理。在SQL Server 中主要有兩種角色類型 :服務器級角色 數(shù)據(jù)庫級角色1. 服務器級角色服務器級角色建立在

22、SQL服務器上,是由系統(tǒng)預定義的, 用戶不能創(chuàng)建新的服務器角色,而只能選擇合適的己固定的服務器級角色 。 共 有9種預定義的服務器角色,見P197頁表13-1。角色各4年 ,權限 ,sysa也nit飛 ,系統(tǒng)管理鼠,町以在 SQL Smre:r協(xié)仔任何活動 、SeIV也ach:nin ,B匠務 管理鼠,町以設重M務 范圍的配置造項 、se叩1tya也缸 ,支金管理鼠,町以管理重陸 ,process幽趴 , P.i 廳詮4安管理鼠,町以管理在 SQLServ眩申運行的邊擺 R5俑,admin ,/ t .u LI L-支援管理員, 司以管理連鍍服務蒂和啟動過程 ,以血a也llin ,相t量管理鼠

23、, 町以執(zhí)行 B町,K INSE盯詩句,執(zhí)抒火容量敏囂蜻 入t著作 disladm.趴 、酶題管理鼠,司 以管理隔a文件 ,品ere徨店 ,敏據(jù)$1章:者,司以 創(chuàng)建:重敬和刪除數(shù)據(jù)廊 ,public 、ta卜 SQL Sexver 登錄客都屬f public 服務器角色登錄賬戶服務器角色設置案例【例13-11】將sysadmin角色的權限分 配給一個登錄賬號 TESTC 己創(chuàng)建選中登錄賬戶一雙擊一屬性窗口一服 務器角色設置2. 數(shù)據(jù)庫級角色為便于管理數(shù)據(jù)庫中的權限,SQL Server提供了若干角色,這些角色是指對數(shù)據(jù)庫具有相 同訪問權限的用戶和組的集合 。數(shù)據(jù)庫 級角色的 權限作用域為數(shù)據(jù)

24、庫范圍 。SQL Server中有兩 種類型的數(shù)據(jù)庫級角色 :1.固定數(shù)據(jù)庫角色2.用戶自定義數(shù)據(jù)庫角色2. 數(shù)據(jù)庫級角色(1)固定數(shù)據(jù)庫角色固定數(shù)據(jù)庫角色是指這些角色所具有的 權限己被SQL Server定義,并且SQL Server管理員不能對其所具有的權限進行 任何修改。固定數(shù)據(jù)庫角色與相應的權限見P200頁表1r 3 2。數(shù)據(jù)庫級角色 固定數(shù)據(jù)庫角色Dbowner :在數(shù)據(jù)庫中有全部權限 。Db_securityadmin :可以管理全部權限、對象 所有權限,擁有角色和角色成員資格 。Db_accessadmin :可以添加和刪除用戶 ID。Db_backupoperat。r :可以發(fā)

25、出 DBCC、CHECKPOINT和B.CKU.P語句。Dbddladmin :可以發(fā)出除GRANT、 REVOKE、DENY之外的所有數(shù)據(jù)定義語句 。數(shù)據(jù)庫級角色 固定數(shù)據(jù)庫角色Dbdatawriter :可以更改數(shù)據(jù)庫內任何表中的所 有數(shù)據(jù)了Dbdatareader:可以選擇數(shù)據(jù)庫內任何用戶表中 的所有數(shù)據(jù)。Dbdenydatareader :不能選擇數(shù)據(jù)庫內任何用 戶表中的任何數(shù)據(jù) 。Dbdenvdatawriter :不能更改數(shù)據(jù) 庫內任何用戶表 中的任何數(shù)據(jù)Public :最基本的數(shù)據(jù)庫角色 。每個用戶可以不屬于其他9個固定數(shù)據(jù)庫的角色,但至少會屬于 public數(shù) 據(jù)庫角色,當在數(shù)

26、據(jù)庫中添加新用戶賬號時, saLServer 2008會自動將新的用戶賬號加入 public數(shù)據(jù)庫角色中 。數(shù)據(jù)庫級角色一 自定義數(shù)據(jù)庫角色當固定的數(shù)據(jù)庫角色不能滿足要求時, 的數(shù)據(jù)庫角色。 1)使用對象資源管理器創(chuàng)建角色需要定義新【例13-12】為Library數(shù)據(jù)庫創(chuàng)建一個數(shù)據(jù)庫角色 Role。2) 使用存儲過程創(chuàng)建角色使用sp_addrole在當前數(shù)據(jù)庫中創(chuàng)建新角色,其語法 :EXEC, , 飛 , p_addrole I Ir。le ,ovvn,r其 中 :rdl 表示新角色的名稱 ,l4 。wti1 er表示新建角色的擁有者。【 例6】 在Library數(shù)據(jù)庫中創(chuàng)建一個名稱為 myr

27、ole的角色。EXECsp_addrolemyrole,可bo 管理數(shù)據(jù)庫用戶和角色1. 查看角色 的屬性 選中角色對象右鍵屬性2. 刪除角色1) 使用對象資源管理器刪除角色注意 :此角色 中的成員要先刪空2) 使用存儲過程刪除角色使用sp_droprole 從當前數(shù)據(jù)庫刪除指定的角色,其語法為 :EXECsp_dr。pr。ler。le角色【 例11】 刪除b。 。k數(shù)據(jù)庫中的myrole角色。USE Library GOEXECsp_droprolemyr。le3.用戶和角色的權限問題1) 用戶權限繼承角色的權限2) 用戶分屬于不同角色繼承來的權限,否決優(yōu)先SQLServer2008 使用權

28、限來加強系統(tǒng)的安全性 ,通權限可以分為 三種類型 : 語 旬J僅 限 一 一 一 創(chuàng) 建 對 象 的非 又 限 對 象 權 限 一 一 一 操 丁 乍 對 象 的 權 限隱 含 權 限 一 一 一 通 過 到 芭 傳 遞 海 到 的 權 限 ( 暗 示 性 權限) 。W吊13.3權限管理權限管理 語 句 僅 限1.語句僅限動作對象語句備份數(shù)據(jù)backup database日志backup log數(shù)據(jù)庫create database( 僅master庫數(shù)據(jù)表create table( 僅管理員或 DB所以. . . .l民代n n nr者 ).民視圖 Y / 1crea1 t l ieW Y U

29、l創(chuàng)建存儲過程create procedure自定義函數(shù) create function規(guī)則create rule默認c- reate default權限管理 倦 句 僅 限創(chuàng)建與控制對象的權限1.語句權限語句權限是用于控制數(shù)據(jù)庫操作或創(chuàng)建 數(shù)據(jù)庫中的對象操作的權限 。設置方法:1)命令授權2) 數(shù)據(jù)庫 右 鍵 屬 性 權 限權限管理 對象僅限2.對象僅限對象表或視圖存儲過程操作select 、insert 、update 和 deleteEecu te內嵌表值函數(shù) I Select表或視圖的列 I select和update權限管理 對象權限2.對象權限用于控制用戶對數(shù)據(jù)庫對象 : 包括表、

30、視圖、存儲過程執(zhí)行某些操作的權限 。對象權限是針對數(shù)據(jù)庫對象設置的,它由數(shù)據(jù)庫對象所有者授予、禁止或撤銷 。設置方法 :操作、使用對象的權限1.命令授權2.選擇對象(如: 1 b。 。k2 )一一右鍵一一屬性一一權限一一添加用戶二一權限設置 3.選擇用戶名一一屬性一一安全對象一一添加對象一一特 定對象 特定類型所有對象一一對象類型選擇(如 :表)一一瀏覽 一一選擇對象如 :b。 。k2) 一一添加權限權限管理 隱令僅限3.隧 令 僅 限 :暗示性權限是指將用戶(成員)加入角 色,系統(tǒng)自動將角色的權限傳遞給成員的 權限,特別是預定義角色,如固定服務器 角色成員所具有的權限。1 r,; 暗示掛權限

31、是由 添加或刪除角色成員實現(xiàn)的。使用T-SQL語句管理權限使用T-SQL語句管理權限的命令 : (1) 授予權限一GRANT (2) 撤銷權限一 REVOKE(3) 禁止權限一一DENY( 刪除原有的權限,還禁止該用戶或角色從其他角色繼盡 禁止的權限。例如 :某個用戶具有db_owner權限,但是它又是某角色的成員 j該角色具有拒絕刪除某表數(shù)據(jù)的權限,則這個用戶也拒絕刪除該表的記錄 ,即:否決優(yōu)先)使用T-SQL語句管理權限1.授予權限與撤銷權限1) 授權(GRANT) 語句的格式如下 : GRANT權限1,權限2,. TO用戶 1,用戶2, .2) 回收(REVOKE) 語句的格式如 下 :

32、R E V O E權限1 II 權限2:fFReM用戶1,用戶2.;使用T-SQL語句管理權限【 例7】 給用戶b。 。k_user1和b。 。k_user2授予多個 語句權限即這兩個 用戶可以創(chuàng)建數(shù)據(jù)庫和 創(chuàng)建表的權限。( 如果沒有這兩個 用戶,應該先添加這兩個 用戶)USE masterGOGRANT CREATE DATABASE , CREATE TABLETO bookser1 , b。kuser2提示 :1.只能在master 數(shù)據(jù)庫中授予 CREATE DATABASE 權限2 .僅系統(tǒng)管理員或數(shù)據(jù)庫所有者授予 CREATE TABLE 的 權限方能有效使用T-SQL語句管理權限

33、EXEC sp_addlogin EXEC sp_addloginbook_login1 , 111 , Libraryb。 。k_I。gin2 , 111 , LibraryUSEmasterEXEC sp_adduserbook_login1 , b。 。k_user1EXEC sp_adduser b。 。k_login2 , book_user2g。GRANT CRi;ttatat5aseJ JJ D.J LI 飛仨亂、二夕飛TOb。 。k_user1 , b。 。k_user2 只能在master 數(shù)據(jù)庫中授予 CREATE DATABASE 權限。提示:其他數(shù)據(jù)庫需要創(chuàng)建數(shù)據(jù)庫的權

34、限,可以給登錄名的服 務器角色給予dbcreator 的權限使用T-SQL語句管理權限EXEC sp_addl。gin EXEC sp_addloginb。 。k_I。gin1 , 111 , Library b。 。k_login2 , 111 , Libraryb。 。k_I。gin1 ,book_user1 , db_datareaderuse LibraryEXEC sp_adduserEXEC sp_adcluselib。 。k二user2 , db一 。wnerGRANT CREATE TABLE TO book user2僅管理員或 DB所以者方能有效,給 user1就不行使用T

35、-SQL語句管理權限【 例8】 撤銷授予用戶賬戶 bookuser1的CREATE TABLE權限。REVOKE CREATE TABLE FROMb。 。k user1【 例9】 撤銷授予多個用戶賬戶的多個權限。REVOKECREATE TABLECREATE DEFAULTFROM b。 。k user1, b。 。k user2使用T-SQL語句管理權限2. 授予和撤銷對象權限的語法格式1) 授權( GRANT) 語句的格式如下 :GRANT 權限1 , 權 限2 , . ON對象名稱TO 用戶1 , 用 戶 2 .WITH GRANT OPTION2) 回收( R寫IQKE) 語旬的格

36、式如下 :REVOKE 權限1 , 權 限2.1- ON對象名稱lFROM 用戶1 , 用 戶 2.使用T-SQL語句管理權限【 例10】 給用戶b。 。k_user1 , b。 。k_user2授予對b。 。k2表的所有權限,先給 public角色授予SELECT權限,然后將特定的權限授予 book_user1 , b。ok_user2對象權限USE LibraryG。grantinsert , update, delete on b。 。k2 tob。 。k user1, book user2使用T-SQ. L語句管理權限DENYC 命令格式類同 GRANT 和REVOKE )刪除原有的權限 ,還禁止該用戶或角色 從 其他角色繼承禁止的權限 。禁止語句權限【 例 】 禁止user2創(chuàng)建表DENYGJ3 ! J;A,J TABt . LI;1r:IiOuser2_ t )1 ll 1 ;1仁l( )J 11禁止對象授權【 例 】 禁止user2對表readers 的DELETEDENYDELETEON readersTO user2使用T-SQL語句管理權限【 11】 拒絕給用戶 bo。k user1和book user2授予多個語句權限 。( 如果沒有這兩個用戶,應 該先添加這兩個用戶 )USE masterGODENYdftE l(E

溫馨提示

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

評論

0/150

提交評論