《數(shù)據(jù)庫的安全性》PPT課件.ppt_第1頁
《數(shù)據(jù)庫的安全性》PPT課件.ppt_第2頁
《數(shù)據(jù)庫的安全性》PPT課件.ppt_第3頁
《數(shù)據(jù)庫的安全性》PPT課件.ppt_第4頁
《數(shù)據(jù)庫的安全性》PPT課件.ppt_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1,數(shù)據(jù)庫系統(tǒng)中,DBMS提供統(tǒng)一的數(shù)據(jù)保護功能: 保證數(shù)據(jù)的正確、一致數(shù)據(jù)的完整性 防范對象:不合語義的、不正確的數(shù)據(jù) 保證數(shù)據(jù)的安全可靠數(shù)據(jù)的安全性 防范對象:非法用戶和非法操作,Page 2,第8章 數(shù)據(jù)庫的安全性,3,1、用戶管理2、角色劃分3、權限管理4、數(shù)據(jù)的導入/導出和備份,4,1. SQL Server的安全機制,網(wǎng)絡,登錄,登錄,用戶,數(shù)據(jù)庫服務器,學生庫,教師庫,財務庫,表1,表2,表3,表4,是否可以操作數(shù)據(jù)庫?,有相應操作權限?,是合法服務器用戶?,SQL Server 2005的安全機制: 用戶訪問數(shù)據(jù)庫必須經(jīng)過兩級安全性檢查,即用戶身份檢查、用戶操作權限檢查。 -

2、用戶身份檢查:DBMS對連接數(shù)據(jù)庫服務器的用戶進行身份檢查; -操作權限檢查:對已經(jīng)連接到服務器的用戶,檢查其是否可以操作指定數(shù)據(jù)庫及其對象,是否有相應的操作權限。,5,支持Windows身份驗證模式和混合模式兩種身份驗證模式。 Windows身份驗證模式: SQL Server利用其操作系統(tǒng)平臺的管理登錄、驗證用戶合法性的能力,用戶只需要通過Windows的身份驗證,就可以連接到SQL Server, SQL Server本身不需要管理一套登錄數(shù)據(jù)。 混合模式: 允許用戶選擇使用其Windows賬戶或其SQL Server賬戶登錄到SQL Server系統(tǒng)。 對于后者,SQL Server自

3、己設置和管理SQL Server登錄賬戶,并對登錄用戶進行身份驗證。,(1) SQL SERVER2005的身份驗證模式,說明:在安裝SQLServer2005服務器時,曾要求選擇身份驗證模式,通常選擇混合模式,同時設置了系統(tǒng)登錄賬戶sa的登錄密碼。安裝后也可隨時更改身份驗證模式。,6,設置SQL Server的身份認證模式,在SSMS中右擊服務器,選擇“屬性”,修改后重新啟動SQL Server才生效,7,用戶登錄到服務器后,對某數(shù)據(jù)庫及其對象進行操作時,系統(tǒng)還要檢查: 該登錄賬戶是否在該數(shù)據(jù)庫中有數(shù)據(jù)庫帳號; 有無對該數(shù)據(jù)庫對象相應的操作權限。,(2) SQL SERVER2005的權限驗

4、證機制,8,2. SQL Server2005系統(tǒng)的安全管理,包括用戶管理、角色管理和權限管理三方面。,用戶:分為登錄用戶和數(shù)據(jù)庫用戶。 登錄用戶又分為Windows管理的用戶和SQL Server服務器管理的用戶。 數(shù)據(jù)庫用戶:登錄用戶只有在相應的數(shù)據(jù)庫中映射(設置)為其合法的用戶,才允許訪問該數(shù)據(jù)庫。默認新建立的數(shù)據(jù)庫都自動添加了一個由sa登錄帳號映射得到的數(shù)據(jù)庫用戶dbo。 權限:用戶登錄后,能對服務器、數(shù)據(jù)庫及其對象執(zhí)行什么樣的操作,稱之為用戶的權限。 登錄用戶的權限:對服務器的安裝、配置、備份、文件、進程、安全性和批量數(shù)據(jù)導入等管理工作。 數(shù)據(jù)庫用戶的權限:權限分三個層次:創(chuàng)建數(shù)據(jù)庫

5、對象及進行數(shù)據(jù)庫備份的權限、對數(shù)據(jù)庫對象的操作權限以及對指定表字段的操作權限。,9,角色:對權限的一種集中管理方式,通過角色將用戶分類,同類用戶統(tǒng)一進行權限管理,簡化了用戶的權限管理工作。,固定服務器角色: Sysadmin:可以在SQL Server中執(zhí)行任何操作 Serveradmin:可以設置服務器范圍的配置選項,關閉服務器 Setupadmin:可以管理鏈接服務器和啟動過程 Securityadmin:可以管理登錄和CREATE DATABASE權限,可以讀取錯誤日志和更改密碼 Processadmin:可以管理在SQL Server中運行的進程 Dbcreator:可以創(chuàng)建、更改和除

6、去數(shù)據(jù)庫 Diskadmin:可以管理磁盤文件 Bulkadmin:可以執(zhí)行BULK INSERT(大容量數(shù)據(jù)插入)語句,10,固定數(shù)據(jù)庫角色: Public:每個數(shù)據(jù)庫用戶都屬于public角色 db_owner:在數(shù)據(jù)庫中有全部權限 db_accessadmin:可以增加或者刪除數(shù)據(jù)庫用戶 db_securityadmin:管理數(shù)據(jù)庫角色和成員,并管理數(shù)據(jù)庫的語句和對象權限 db_ddladmin:可以添加、修改或除去數(shù)據(jù)庫中的對象(運行所有DDL) db_backupoperator:可以備份和恢復數(shù)據(jù)庫 db_datareader:可以讀取數(shù)據(jù)庫內(nèi)任何用戶表中的所有數(shù)據(jù) db_data

7、writer:可以更改數(shù)據(jù)庫內(nèi)任何用戶表中的所有數(shù)據(jù) db_denydatareader:不能讀取數(shù)據(jù)庫內(nèi)任何用戶表中的任何數(shù)據(jù) db_denydatawriter:不能更改數(shù)據(jù)庫內(nèi)任何用戶表中的任何數(shù)據(jù) 自定義數(shù)據(jù)庫角色,通過在角色中添加用戶成員, 使其獲得相應的管理和操作權限;或者在添加用戶時,可以指定該用戶屬于哪一個角色,也會使其自動獲取相應權限。,11,(1)用戶管理,指添加、修改、查看、刪除用戶以及用戶授權。包括登錄用戶管理和數(shù)據(jù)庫用戶管理。,登錄用戶管理 1)添加登錄用戶 Windows用戶:首先在服務器操作系統(tǒng)中建立該用戶,然后將其添加到SQL Server的登錄用戶中。 Win

8、dwos用戶的名稱:計算機名稱用戶名 SQL Server用戶:在SSMS對象資源管理器中單擊“新建登錄名”(a)輸入登錄用戶名稱, 并設置登錄密碼;(b)指定默認數(shù)據(jù)庫;(c)選擇用戶的服務器角色,使其具有相應的服務器管理權限;(d)選擇映射成為指定數(shù)據(jù)庫的用戶,同時使該數(shù)據(jù)庫用戶添加為指定數(shù)據(jù)庫角色的成員,以獲得相應操作權限。注意默認數(shù)據(jù)庫必須選中。,2)查看、修改和刪除登錄用戶 右擊該登錄用戶,選擇“屬性”或“刪除”。,12,數(shù)據(jù)庫用戶管理 主要指將登錄用戶映射為指定數(shù)據(jù)庫的用戶,并通過角色分配授予該數(shù)據(jù)庫用戶相應的操作權限。 在SSMS對象資源管理器中單擊展開指定數(shù)據(jù)庫的安全性分支,右

9、擊“用戶”,選“新建用戶”(a)輸入或搜索要映射的登錄用戶名稱;(b)輸入映射成的數(shù)據(jù)庫用戶名,一般與 登錄用戶同名;(c)指定該用戶加入的角色以及其擁有的 架構(二者選擇一致);(d)最后單擊“確定”。 同樣,可以隨時查看、修改、刪除數(shù)據(jù)庫用戶。,13,(2)權限管理,權限是指用戶對服務器可以執(zhí)行的管理任務、對訪問的數(shù)據(jù)庫和對該數(shù)據(jù)庫對象可以執(zhí)行的相關操作。 權限分三級層次管理:服務器權限、數(shù)據(jù)庫權限、數(shù)據(jù)庫對象權限。 服務器權限:允許執(zhí)行服務器管理任務,權限被定義在固定服務器角色中。在服務器屬性對話框的“權限”頁可以為登錄用戶授予權限。,14,數(shù)據(jù)庫權限:允許創(chuàng)建、管理數(shù)據(jù)庫對象。在指定數(shù)

10、據(jù)庫的屬性對話框中為數(shù)據(jù)庫用戶授予權限。,15,數(shù)據(jù)庫對象權限:對特定的數(shù)據(jù)庫對象(表、視圖、存儲過程、函數(shù)等)的操作權限。主要有6種: SELECT:查詢權限 INSERT:插入數(shù)據(jù)權限 UPDATE:修改權限(必須同時具有SELECT權限) DELETE:刪除數(shù)據(jù)權限 REFERENCE:引用對象的權限 ALTER:更改對象的權限 在具體的數(shù)據(jù)庫對象的屬性對話框中的“權限”頁面中添加數(shù)據(jù)庫用戶,并授予他對該對象的相應操作權限。 數(shù)據(jù)庫的創(chuàng)建者可以查看、添加或刪除數(shù)據(jù),更改表定義、或控制允許其他用戶對表進行操作的權限。,16,學生基本信息表的“表屬性”對話框,添加數(shù)據(jù)庫用戶、角色,并對他授予

11、相應權限。,17,(3)角色管理,角色是對權限的一種集中管理機制,是為了簡化對用戶權限管理工作而設置的一種對象。,管理服務器角色:對指定的固定服務器角色添加或刪除成員。 管理數(shù)據(jù)庫角色:對指定的固定數(shù)據(jù)庫角色添加或刪除成員。,18,自定義數(shù)據(jù)庫角色:,本數(shù)據(jù)庫用戶、角色中誰是該角色的擁有者,他可以在角色中添加或刪除角色成員。,此角色擁有的架構,例如dbo,添加或刪除角色成員。,19,“安全對象”頁面設置該角色可以訪問的對象,并進行授權。,對指定列的操作權限,添加特定的對象,如“表”,并指定具體的表,如“學生基本信息”表。,拒絕:拒絕授予該對象該權限,也防止對象通過角色成員身份繼承權限; 具有授

12、予權限:可以將此權限授予其他用戶。 若未授予也未拒絕,則可以使用從角色繼承來的權限; 拒絕覆蓋其他權限。,20,(1)用戶管理相關命令可以使用系統(tǒng)存儲過程添加、修改、刪除登錄用戶和數(shù)據(jù)庫用戶,修改登錄密碼、修改默認數(shù)據(jù)庫例1:將Windows用戶LEEpublic映射到SQL Server登錄賬戶。 exec sp_grantlogin LEEpublic 例2:創(chuàng)建SQL Server登錄賬戶lee,密碼為111111,默認數(shù)據(jù)庫為“學生管理”。 exec sp_addlogin lee, 111111, 學生管理 例3:為登錄賬戶lee創(chuàng)建數(shù)據(jù)庫用戶。 exec sp_grantdbacc

13、ess lee 如果沒有指定數(shù)據(jù)庫用戶名,則默認為與“登錄名”相同。 例4:刪除數(shù)據(jù)庫用戶lee 。 exec sp_revokedbaccess lee,3. 使用SQL命令進行安全管理,21,(2)權限管理相關命令設置數(shù)據(jù)庫對象權限包括: 授予權限(Grant):授予用戶或角色相應的對象權限。 拒絕權限(Deny):可用于防止該用戶或角色通過 GRANT 獲得特定權限 ,包括刪除以前授予用戶、組或角色的權限,停用從其他角色繼承的權限,確保用戶、組或角色將來不繼承更高級別的組或角色的權限。 廢除權限(Revoke):廢除權限是刪除已授予的權限,并不妨礙用戶、組或角色從更高級別繼承已授予的權限

14、。,22,基本語法如下: GRANT ALL | 權限 ,.n ( 列名 ,.n ) ON 表 | 視圖 | ON 表 | 視圖 ( 列名 ,.n ) | ON 存儲過程 | ON用戶自定義函數(shù) TO 安全賬戶 ,.n WITH GRANT OPTION AS 組 | 角色 ,在表、視圖上可授予SELECT、INSERT、DELETE、UPDATE、 REFERENCES權限。,數(shù)據(jù)庫用戶或角色,使被授權用戶或角色可以將該權限再授予其他用戶,授予對象權限GRANT,23,授予對象權限舉例,【例1】使用GRANT語句對角色newrole授予對表“學生”的INSERT、UPDATE和DELETE的

15、權限。 GRANT INSERT, UPDATE, DELETE ON 學生 TO newrole 【例2】使用GRANT語句授予用戶Mary、John和Tom對pubs數(shù)據(jù)庫的authors表的插入、修改、刪除權限。 USE pubs GRANT INSERT, UPDATE, DELETE ON authors TO Mary, John, Tom,24,授予對象權限舉例,【例3】使用GRANT語句授予用戶Log1對pubs數(shù)據(jù)庫的Titles表的Title_id和Title列具有修改權限。 USE Pubs GRANT UPDATE(Title_id , Title) ON Titles

16、 TO Log1 也可以寫成: USE Pubs GRANT UPDATE ON Titles(Title_id , Title) TO Log1,25,授予對象權限舉例,【例4】使用GRANT語句將對Market數(shù)據(jù)庫的Custumers表的SELECT、INSERT權限授予用戶Zhang,并允許用戶Zhang再將該權限授予其他用戶或角色。 USE Market GRANT SELECT , INSERT ON Custumers TO Zhang WITH GRANT OPTION,26,授予對象權限舉例,【例5】用戶Tom將對表Table1的SELECT權限授予Role1角色,指定WIT

17、H GRANT OPTION子句。 GRANT SELECT ON Table1 TO Role1 WITH GRANT OPTION 設用戶Jerry是Role1的成員,他要將表Table1上的SELECT權限授予用戶Jack(設Jack不是Role1的成員)。相應的GRANT語句如下: GRANT SELECT ON Table1 TO Jack AS role1 因為對表Table1的WITH GRANT OPTION權限是授予Role1角色,而不是顯式地授予Jerry,因此,Jerry必須用AS子句來獲得role1角色的這種權限。,27,廢除對象權限REVOKE,基本語法如下: REV

18、OKE GRANT OPTION FOR ALL | 權限 ,.n ( 列名 ,.n ) ON 表 | 視圖 | ON 表 | 視圖 ( 列名 ,.n ) | ON 存儲過程 | 用戶自定義函數(shù) TO | FROM 安全賬戶 ,.n CASCADE AS 組 | 角色 ,28,廢除對象權限,參數(shù)說明: GRANT OPTION FOR:指定要收回WITH GRANT OPTION權限。用戶仍然具有指定的權限,但是不能將該權限授予其他用戶。 CASCADE:收回指定安全賬戶的權限時,也將收回由其授權的任何其他安全賬戶的權限。如果要收回的權限原先是通過WITH GRANT OPTION設置授予的,需指定CASCADE和GRANT OPTION FOR 子句,否則將返回一個錯誤。 AS 組 | 角色:說明要管理的用戶從哪個角色或組繼承權限。,29,廢除對象權限,【例7】使用REVOKE語句廢除角色newrole對“學生”表的INSERT、UPDATE和DELETE的權限。 REVOKE INSERT, UPDATE, DELETE ON 學生 TO newrole 【例8】廢除用戶yuan對p

溫馨提示

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

評論

0/150

提交評論