第10章安全管理2_第1頁
第10章安全管理2_第2頁
第10章安全管理2_第3頁
第10章安全管理2_第4頁
第10章安全管理2_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫原理與應(yīng)用教程(第2版)人民郵電出版社第第1010章章 安全管理安全管理 v10.1 10.1 安全控制安全控制 v10.2 SQL Server10.2 SQL Server的安全控制的安全控制v10.3 10.3 管理登錄賬戶管理登錄賬戶v10.4 10.4 管理數(shù)據(jù)庫用戶管理數(shù)據(jù)庫用戶v10.5 10.5 管理權(quán)限管理權(quán)限v10.6 10.6 角色角色第十章第十章 安全管理安全管理v 如何理解數(shù)據(jù)庫的安全控制?如何理解數(shù)據(jù)庫的安全控制? v 數(shù)據(jù)庫的安全控制有哪些措施?數(shù)據(jù)庫的安全控制有哪些措施?v 按操作權(quán)限的不同,數(shù)據(jù)庫用戶可分為幾類按操作權(quán)限的不同,數(shù)據(jù)庫用戶可分為幾類?v

2、用戶要訪問用戶要訪問SQL ServerSQL Server數(shù)據(jù)庫中的數(shù)據(jù),需數(shù)據(jù)庫中的數(shù)據(jù),需要經(jīng)過幾層認證?要經(jīng)過幾層認證?v SQL ServerSQL Server的登錄帳戶有幾種類型?分別是的登錄帳戶有幾種類型?分別是什么?如何設(shè)置?什么?如何設(shè)置?v SQL ServerSQL Server的權(quán)限有幾種?分別是什么?的權(quán)限有幾種?分別是什么?v 何為數(shù)據(jù)庫的角色?角色有什么作用?何為數(shù)據(jù)庫的角色?角色有什么作用?安全控制安全控制 安全控制:在數(shù)據(jù)庫應(yīng)用系統(tǒng)的安全控制:在數(shù)據(jù)庫應(yīng)用系統(tǒng)的不同層次提供對有意損害行為的安不同層次提供對有意損害行為的安全防范。全防范。有意的非法活動有意的非

3、法活動有意的非法操作有意的非法操作 無意的損壞無意的損壞加密存取加密存取身份驗證身份驗證限制操作權(quán)限限制操作權(quán)限提高系統(tǒng)可靠性提高系統(tǒng)可靠性數(shù)據(jù)備份數(shù)據(jù)備份 安全控制模型安全控制模型文件操作文件操作控制控制操作權(quán)操作權(quán)控制控制身份身份驗證驗證用戶用戶數(shù)據(jù)庫應(yīng)數(shù)據(jù)庫應(yīng)用程序用程序數(shù)據(jù)庫管數(shù)據(jù)庫管理系統(tǒng)理系統(tǒng)操作操作系統(tǒng)系統(tǒng)加密存儲加密存儲與冗余與冗余備份備份數(shù)據(jù)庫數(shù)據(jù)庫 數(shù)據(jù)庫用戶的分類數(shù)據(jù)庫用戶的分類 v系統(tǒng)管理員系統(tǒng)管理員 在數(shù)據(jù)庫服務(wù)器上具有全部的權(quán)限在數(shù)據(jù)庫服務(wù)器上具有全部的權(quán)限v對象擁有者對象擁有者 創(chuàng)建數(shù)據(jù)庫對象的用戶,對其所擁有的對創(chuàng)建數(shù)據(jù)庫對象的用戶,對其所擁有的對象具有全部的權(quán)

4、限。象具有全部的權(quán)限。v普通用戶普通用戶 只具有對數(shù)據(jù)庫數(shù)據(jù)的查詢、插入、刪除只具有對數(shù)據(jù)庫數(shù)據(jù)的查詢、插入、刪除和修改的權(quán)限。和修改的權(quán)限。SQL ServerSQL Server的安全控制的安全控制三層驗證三層驗證v是否是是否是SQL ServerSQL Server的登錄帳戶的登錄帳戶v是否是該數(shù)據(jù)庫的用戶是否是該數(shù)據(jù)庫的用戶v是否有訪問該表的權(quán)限是否有訪問該表的權(quán)限數(shù)據(jù)庫服務(wù)器SQL ServerSQL Server登錄賬戶來源和認證模式登錄賬戶來源和認證模式1 1登錄賬戶來源登錄賬戶來源 v Windows Windows授權(quán)用戶授權(quán)用戶 v SQL SQL授權(quán)用戶授權(quán)用戶 2 2安

5、全認證模式安全認證模式v WindowsWindows身份驗證模式身份驗證模式 v 混合身份驗證模式混合身份驗證模式 WindowsWindows身份驗證模式身份驗證模式v允許允許WindowsWindows操作系統(tǒng)用戶連接到操作系統(tǒng)用戶連接到SQL SQL ServerServer。v當使用當使用WindowsWindows身份驗證模式時,用戶必身份驗證模式時,用戶必須先登錄到須先登錄到WindowsWindows操作系統(tǒng)中,然后再操作系統(tǒng)中,然后再登錄到登錄到SQL ServerSQL Server。v一般推薦使用一般推薦使用WindowsWindows驗證模式,這種安驗證模式,這種安全模

6、式能夠與全模式能夠與WindowsWindows操作系統(tǒng)的安全系操作系統(tǒng)的安全系統(tǒng)集成,以提供更多的安全功能。統(tǒng)集成,以提供更多的安全功能。 混合模式混合模式v允許允許WindowsWindows授權(quán)用戶和授權(quán)用戶和SQLSQL授權(quán)用戶授權(quán)用戶登錄到登錄到SQL ServerSQL Server數(shù)據(jù)庫服務(wù)器。數(shù)據(jù)庫服務(wù)器。v如果希望非如果希望非WindowsWindows操作系統(tǒng)的用戶操作系統(tǒng)的用戶也能登錄到也能登錄到SQL ServerSQL Server數(shù)據(jù)庫服務(wù)器數(shù)據(jù)庫服務(wù)器上,則應(yīng)選擇混合身份驗證模式。上,則應(yīng)選擇混合身份驗證模式。設(shè)置身份驗證模式設(shè)置身份驗證模式v步驟:步驟: 在在S

7、SMSSSMS的的“對象資源管理器對象資源管理器”中,在要設(shè)置中,在要設(shè)置身份驗證模式的實例上右擊鼠標,從彈出的身份驗證模式的實例上右擊鼠標,從彈出的菜單中選擇菜單中選擇“屬性屬性”命令。命令。 在在“服務(wù)器屬性服務(wù)器屬性”窗口左邊的窗口左邊的“選擇頁選擇頁”上,上,單擊單擊“安全性安全性”選項。選項。建立登錄賬戶的建立登錄賬戶的T-SQLT-SQL語句語句CREATE LOGIN CREATE LOGIN login_name WITH login_name WITH | FROM | FROM := := WINDOWS WITH ,. WINDOWS WITH ,. := := PASS

8、WORD = password MUST_CHANGE PASSWORD = password MUST_CHANGE , ,. , ,. := := | DEFAULT_DATABASE = database | DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language | DEFAULT_LANGUAGE = language := := DEFAULT_DATABASE = database DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language | DEFAULT_LA

9、NGUAGE = language示例示例例例1 1創(chuàng)建創(chuàng)建WindowsWindows身份驗證的登錄賬戶。從身份驗證的登錄賬戶。從WindowsWindows域域賬戶創(chuàng)建賬戶創(chuàng)建 HYJWin_User2 HYJWin_User2 登錄賬戶。登錄賬戶。CREATE LOGIN HYJWin_User2 FROM WINDOWSCREATE LOGIN HYJWin_User2 FROM WINDOWS例例2 2創(chuàng)建創(chuàng)建SQL ServerSQL Server身份驗證的登錄賬戶。登錄名為:身份驗證的登錄賬戶。登錄名為:SQL_User2SQL_User2,密碼為:,密碼為:a1b2c3XYa1

10、b2c3XY。CREATE LOGIN SQL_User2 WITH PASSWORD=a1b2c3XYCREATE LOGIN SQL_User2 WITH PASSWORD=a1b2c3XY例例3 3創(chuàng)建創(chuàng)建SQL ServerSQL Server身份驗證的登錄賬戶。登錄名為:身份驗證的登錄賬戶。登錄名為:SQL_User3SQL_User3,密碼為:,密碼為:AD4h9fcdhx32MOPAD4h9fcdhx32MOP。要求該登。要求該登錄賬戶首次連接服務(wù)器時必須更改密碼。錄賬戶首次連接服務(wù)器時必須更改密碼。 CREATE LOGIN SQL_User3 WITH PASSWORD =

11、CREATE LOGIN SQL_User3 WITH PASSWORD = AD4h9fcdhx32MOP AD4h9fcdhx32MOP MUST_CHANGEMUST_CHANGE10.4 10.4 管理數(shù)據(jù)庫用戶管理數(shù)據(jù)庫用戶 v10.4.1 4.1 建立數(shù)據(jù)庫用戶建立數(shù)據(jù)庫用戶 v10.4.2 4.2 刪除數(shù)據(jù)庫用戶刪除數(shù)據(jù)庫用戶 建立數(shù)據(jù)庫用戶的建立數(shù)據(jù)庫用戶的T-SQLT-SQL語句語句CREATE USER user_name FOR | FROM CREATE USER user_name FOR | FROM LOGIN login_name LOGIN login_nam

12、e v注意:如果省略注意:如果省略FOR LOGINFOR LOGIN,則新的數(shù)據(jù),則新的數(shù)據(jù)庫用戶將被映射到同名的庫用戶將被映射到同名的SQL ServerSQL Server登錄登錄名。名。示例示例v例例1.1.讓讓SQL_User2SQL_User2登錄賬戶成為登錄賬戶成為studentsstudents數(shù)數(shù)據(jù)庫中的用戶,并且用戶名同登錄名。據(jù)庫中的用戶,并且用戶名同登錄名。CREATE USER SQL_User2CREATE USER SQL_User2v例例2.2.創(chuàng)建名為創(chuàng)建名為SQL_JWCSQL_JWC且具有密碼的且具有密碼的SQL SQL ServerServer身份驗證的

13、服務(wù)器登錄名,并創(chuàng)建與身份驗證的服務(wù)器登錄名,并創(chuàng)建與此登錄賬戶對應(yīng)的數(shù)據(jù)庫用戶此登錄賬戶對應(yīng)的數(shù)據(jù)庫用戶JWCJWC。CREATE LOGIN SQL_JWC CREATE LOGIN SQL_JWC WITH PASSWORD = jKJl3$nN09jsK84; WITH PASSWORD = jKJl3$nN09jsK84;CREATE USER JWC FOR LOGIN SQL_JWC;CREATE USER JWC FOR LOGIN SQL_JWC;特別說明特別說明v服務(wù)器登錄賬戶與數(shù)據(jù)庫用戶是兩個完全服務(wù)器登錄賬戶與數(shù)據(jù)庫用戶是兩個完全不同的概念。不同的概念。v具有登錄賬戶的

14、用戶可以登錄到具有登錄賬戶的用戶可以登錄到SQL SQL ServerServer實例上,而且只局限在實例上進行實例上,而且只局限在實例上進行操作。操作。v數(shù)據(jù)庫用戶是登錄賬戶以什么樣的身份在數(shù)據(jù)庫用戶是登錄賬戶以什么樣的身份在數(shù)據(jù)庫中進行操作,是登錄賬戶在具體數(shù)數(shù)據(jù)庫中進行操作,是登錄賬戶在具體數(shù)據(jù)庫中的映射,這個映射名(數(shù)據(jù)庫用戶據(jù)庫中的映射,這個映射名(數(shù)據(jù)庫用戶名)可以和登錄名一樣,也可以不一樣。名)可以和登錄名一樣,也可以不一樣。10.4.2 10.4.2 刪除數(shù)據(jù)庫用戶刪除數(shù)據(jù)庫用戶 v展開要刪除用戶的數(shù)據(jù)庫。展開要刪除用戶的數(shù)據(jù)庫。v再展開該數(shù)據(jù)庫下的再展開該數(shù)據(jù)庫下的“安全性安

15、全性” “用戶用戶”節(jié)點節(jié)點。v在要刪除的用戶名上右擊鼠標,在彈在要刪除的用戶名上右擊鼠標,在彈出的菜單上選擇出的菜單上選擇“刪除刪除”命令。命令。刪除數(shù)據(jù)庫用戶的刪除數(shù)據(jù)庫用戶的T-SQLT-SQL語句語句DROP USER user_nameDROP USER user_name例例3 3刪除刪除SQL_User2SQL_User2用戶。用戶。DROP USER SQL_User2DROP USER SQL_User2v注意:不能刪除擁有對象的用戶。注意:不能刪除擁有對象的用戶。10.5 10.5 管理權(quán)限管理權(quán)限 v10.5.1 5.1 權(quán)限的種類權(quán)限的種類v10.5.2 5.2 權(quán)限的

16、管理權(quán)限的管理 SQL Server SQL Server權(quán)限種類權(quán)限種類v對象權(quán)限對象權(quán)限是用戶在已創(chuàng)建的對象上行使的權(quán)限:是用戶在已創(chuàng)建的對象上行使的權(quán)限: DELETE,INSERT,UPDATE,SELECT,EXECUTE DELETE,INSERT,UPDATE,SELECT,EXECUTEv數(shù)據(jù)權(quán)限數(shù)據(jù)權(quán)限是創(chuàng)建對象的權(quán)限:是創(chuàng)建對象的權(quán)限: CREATECREATE DATABASE/TABLE/VIEW/INDEX/PROCEDURE DATABASE/TABLE/VIEW/INDEX/PROCEDURE BACKUPBACKUP DATABASE/LOG DATABASE/

17、LOGv隱含權(quán)限隱含權(quán)限是指由是指由SQL ServerSQL Server預(yù)定義的服務(wù)器角色、預(yù)定義的服務(wù)器角色、數(shù)據(jù)庫角色、數(shù)據(jù)庫擁有者和數(shù)據(jù)庫對象擁有者所數(shù)據(jù)庫角色、數(shù)據(jù)庫擁有者和數(shù)據(jù)庫對象擁有者所具有的權(quán)限。隱含權(quán)限相當于內(nèi)置權(quán)限,不需要再具有的權(quán)限。隱含權(quán)限相當于內(nèi)置權(quán)限,不需要再明確地授予這些權(quán)限。明確地授予這些權(quán)限。 如數(shù)據(jù)庫擁有者自動具有對如數(shù)據(jù)庫擁有者自動具有對數(shù)據(jù)進行一切操作的權(quán)限。數(shù)據(jù)進行一切操作的權(quán)限。 權(quán)限的管理權(quán)限的管理v授予權(quán)限授予權(quán)限:授予用戶或角色具有某種操:授予用戶或角色具有某種操作權(quán)。作權(quán)。v收回權(quán)限收回權(quán)限:收回(或撤消)曾經(jīng)授予給:收回(或撤消)曾經(jīng)授

18、予給用戶或角色的權(quán)限。用戶或角色的權(quán)限。v拒絕訪問拒絕訪問:拒絕某用戶或角色具有某種:拒絕某用戶或角色具有某種操作權(quán)限。一旦拒絕了用戶的某個權(quán)限,操作權(quán)限。一旦拒絕了用戶的某個權(quán)限,則用戶從任何地方都不能獲得該權(quán)限。則用戶從任何地方都不能獲得該權(quán)限。用用SSMSSSMS管理數(shù)據(jù)操作權(quán)限管理數(shù)據(jù)操作權(quán)限 v在在SSMSSSMS工具的工具的“對象資源管理器對象資源管理器”中,中,依次展開某數(shù)據(jù)庫下的依次展開某數(shù)據(jù)庫下的“安全安全性性”“用戶用戶”,v在某用戶在某用戶上右擊鼠標,在彈出菜單中選上右擊鼠標,在彈出菜單中選擇擇“屬性屬性”命令,彈出命令,彈出“數(shù)據(jù)庫用戶數(shù)據(jù)庫用戶”窗口。窗口。v在此窗口

19、中,單擊左邊在此窗口中,單擊左邊“選擇頁選擇頁”中的中的“安全對象安全對象”選項選項。對用戶授權(quán)的窗口對用戶授權(quán)的窗口1 1對用戶授權(quán)的窗口對用戶授權(quán)的窗口2 21.1.管理對象權(quán)限管理對象權(quán)限v授權(quán)語句授權(quán)語句GRANTGRANT 對象權(quán)限名對象權(quán)限名 , ON ON 表名表名| |視圖名視圖名| |存儲過程名存儲過程名 TO TO 數(shù)據(jù)庫用戶名數(shù)據(jù)庫用戶名 | | 用戶角色名用戶角色名 , v收權(quán)語句收權(quán)語句REVOKE REVOKE 對象權(quán)限名對象權(quán)限名 , ON ON 表名表名| |視圖名視圖名| |存儲過程名存儲過程名 FROM FROM 數(shù)據(jù)庫用戶名數(shù)據(jù)庫用戶名 | | 用戶角色名

20、用戶角色名 , v拒絕語句拒絕語句DENYDENY對象權(quán)限名對象權(quán)限名 , ON ON 表名表名| |視圖名視圖名| |存儲過程名存儲過程名 TO TO 數(shù)據(jù)庫用戶名數(shù)據(jù)庫用戶名 | | 用戶角色名用戶角色名 , 示例示例v例例1 1為用戶為用戶user1user1授予授予StudentStudent表的查詢權(quán)。表的查詢權(quán)。 GRANT SELECT ON Student TO user1GRANT SELECT ON Student TO user1v例例3 3收回用戶收回用戶user1user1對對StudentStudent表的查詢權(quán)。表的查詢權(quán)。 REVOKE SELECT ON St

21、udent FROM user1REVOKE SELECT ON Student FROM user1v例例4 4拒絕拒絕user1user1用戶具有用戶具有SCSC表的更改權(quán)。表的更改權(quán)。 DENY UPDATE ON SC TO user1DENY UPDATE ON SC TO user1 2.2.管理語句權(quán)限管理語句權(quán)限 v授權(quán)語句授權(quán)語句 GRANTGRANT 語句權(quán)限名語句權(quán)限名 , TO TO 數(shù)據(jù)庫用戶名數(shù)據(jù)庫用戶名 | | 用戶角色名用戶角色名 , v收權(quán)語句收權(quán)語句 REVOKE REVOKE 語句權(quán)限名語句權(quán)限名 , FROM FROM 數(shù)據(jù)庫用戶名數(shù)據(jù)庫用戶名 | |

22、用戶角色名用戶角色名 , v拒絕語句拒絕語句 DENY DENY 語句權(quán)限名語句權(quán)限名 , TO TO 數(shù)據(jù)庫用戶名數(shù)據(jù)庫用戶名 | | 用戶角色名用戶角色名 , 示例示例v例例5 5授予授予user1user1具有創(chuàng)建數(shù)據(jù)庫表的權(quán)限。具有創(chuàng)建數(shù)據(jù)庫表的權(quán)限。 GRANT CREATE TABLE TO user1GRANT CREATE TABLE TO user1v例例7 7收回授予收回授予user1user1創(chuàng)建數(shù)據(jù)庫表的權(quán)限。創(chuàng)建數(shù)據(jù)庫表的權(quán)限。 REVOKE CREATE TABLE FROM user1 REVOKE CREATE TABLE FROM user1v例例8 8拒絕拒絕user1user1創(chuàng)建視圖的權(quán)限。創(chuàng)建視圖的權(quán)限。 DENY CREATE VIEW TO user1DENY CREATE VIEW TO user110.6 10.6 角色角色 v角色:為便于對用戶及權(quán)限的管理,角色:為便于對用戶及權(quán)限的管理,可以將一組具有相同權(quán)限的用戶組織可以將一組具有相同權(quán)限的用戶組織在一起,這一組具有相同權(quán)限的用戶在一起,這一組具有相同權(quán)限的用戶就稱為就稱為角色角色(RoleRole)。)。v角色的好處:方便管理。系統(tǒng)管理員角色的好處:方便管理。系統(tǒng)管理員只需對權(quán)限的種類進行劃分,將不同只需對權(quán)限

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論