項目九公司管理數(shù)據庫系統(tǒng)的安全性管理_第1頁
項目九公司管理數(shù)據庫系統(tǒng)的安全性管理_第2頁
項目九公司管理數(shù)據庫系統(tǒng)的安全性管理_第3頁
項目九公司管理數(shù)據庫系統(tǒng)的安全性管理_第4頁
項目九公司管理數(shù)據庫系統(tǒng)的安全性管理_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、文檔供參考,可復制、編制,期待您的好評與關注! 教案首頁第_9_次(單元)課 授課時間: 課程名稱SQL SERVER數(shù)據庫設計專業(yè)班級 層次授課教師 職稱 課 型(大、小)學時5授課題目(章、節(jié))項目九 公司管理數(shù)據庫系統(tǒng)的安全性管理授課方式理論課;實驗課教材及主要參考書SQL Server 2000 數(shù)據庫教學目的與要求:1能正確使用SQL Server2000的安全管理機制2能正確設置SQL Server2000的身份驗證方法。3會創(chuàng)建和管理數(shù)據庫用戶。4會正確設置理數(shù)據庫權限教學過程設計(內容、時間安排、教學方法等):理論課3學時實驗課2學時教學重點、難點:u 安全管理機制u 會創(chuàng)建和

2、管理數(shù)據庫用戶教研室審閱意見:教研室主任簽名:年 月 日基 本 內 容項目九 公司管理數(shù)據庫系統(tǒng)的安全性管理一、教學目標終極目標:利用SQL Server2000提供的安全機制實現(xiàn)公司管理數(shù)據庫系統(tǒng)的安全管理。促成目標:1能正確使用SQL Server2000的安全管理機制2能正確設置SQL Server2000的身份驗證方法。3會創(chuàng)建和管理數(shù)據庫用戶。4會正確設置理數(shù)據庫權限。二、工作任務數(shù)據安全性一直是困擾數(shù)據庫設計者的一個重要問題,本項目主要完成companyinfo數(shù)據庫系統(tǒng)的安全管理設置。具體任務如下:1 設置SQL Server2000登錄的身份驗證模式為“SQL Server 和

3、windows”混合身份驗證模式。2 添加一個帳戶名為liyan的windows身份驗證的登錄帳戶,然后再刪除該帳戶。3 添加帳戶名分別為arlin、abc和wangjun的SQL Server登錄帳戶,然后再刪除名稱為abc的登錄帳戶。4 設置和刪除數(shù)據庫用戶,要求如下:l 將任務3中設置的SQL Server登錄帳戶“arlin”映射為companyinfo數(shù)據庫的用戶,用戶名為“李平”,即給數(shù)據庫companyinfo添加一個名為“李平”的數(shù)據庫用戶。l 將任務3中設置的SQL Server登錄帳戶“wangjun”映射為companyinfo數(shù)據庫的用戶,用戶名為“王軍”;然后再刪除“

4、王軍”這個數(shù)據庫用戶及其登錄帳戶“wangjun”。5 設置數(shù)據庫用戶“李平”對表P_order的相關列具有修改操作的權限。三、相關實踐知識(一) 按照任務1的要求,設置SQL Server2000登錄的身份驗證模式為“SQL Server 和windows”混合身份驗證模式。其操作步驟如下:1 在企業(yè)管理器中,展開SQl Server服務器組。2 右擊要設置身份驗證的服務器,并在打開的快捷菜單中選擇“屬性”。3 單擊“安全性”選項卡。4 在“身份驗證”下,選擇“SQl Server和Windows”,如圖9-1所示。5 在“審核級別”的單選內容中,選中用戶訪問SQL Server的級別。其含

5、義如下:l “無”:表示不執(zhí)行審核。l “成功”:表示只審核成功的登錄嘗試。l “失敗”:表示只審核失敗的登錄嘗試。l “全部”:表示審核成功的和失敗的登錄嘗試。6、單擊“確定”按鈕,完成任務1的設置。說明:當改變設置后,必須停止并重新啟動SQl Server服務器,設置才會生效。(二) 按照任務2要求,添加一個名為liyan的windows身份驗證的登錄帳戶,然后再刪除該帳戶。1添加一個名liyan的windows身份驗證的登錄帳戶方法一:利用企業(yè)管理器實現(xiàn)其操作步驟如下:(1) 在企業(yè)管理器中,展開SQl Server服務器組中相應的服務器。(2) 展開“安全性”,右擊【登錄】|【新建登錄

6、】命令。(3) 在打開的“新建登錄”對話框的“名稱”框中,輸入要被授權訪問SQL Server的Windows帳戶名稱,其格式為“域名帳戶名”,本任務中輸入“YANGLINliyan”。說明:當前使用的計算機的域名是“YANGLIN”。(4) 在“身份驗證”下,單擊“Windows身份驗證”。(5) 可選(數(shù)據庫和語言):選擇用戶登錄到SQL Server實例后所連接的默認數(shù)據庫和顯示用戶的信息所默認的語言。單擊“確定”按鈕,完成任務2中l(wèi)iyan帳戶的設置。說明:添加了新的登錄帳戶后,在企業(yè)管理器中展開SQL Server服務器相應的服務器,選擇“安全性”|“登錄”,則可以查看已存在的帳戶。

7、方法二:利用Transact-SQL命令實現(xiàn)在查詢分析器中執(zhí)行如下命令即可。EXEC sp_grantlogin 'YANGLINliyan'2利用企業(yè)管理器,刪除已設置的登錄帳戶liyan。方法一:利用企業(yè)管理器實現(xiàn)要刪除已創(chuàng)建的登錄帳戶:首先在如圖9-10所示的窗口中,用鼠標右鍵單擊要刪除的帳戶,在打開的快捷菜單中選擇“刪除”,接著將彈出是否確實刪除的消息提示對話框,在消息提示框中,用鼠標單擊“是”按鈕即可完成帳戶的刪除。方法二:利用Transact-SQL命令實現(xiàn)在查詢分析器中執(zhí)行如下命令,即可刪除Windows NT/2000帳戶YANGLIN liyan。EXEC s

8、p_revokelogin 'YANGLINliyan'(三)按照任務3的要求,添加arlin、abc和wangjun的SQL Server登錄帳戶,然后再刪除名稱為abc的登錄帳戶。1 利用企業(yè)管理器實現(xiàn)添加SQL Server登錄帳戶arlin。利用企業(yè)管理器添加SQL Server登錄帳戶方法同任務2,只是在圖9-3的對話框中選擇“SQL Server身份驗證”和用戶密碼,然后單擊“確定”按鈕。用同樣的方法創(chuàng)建名為abc和wangjun的SQL Server登錄帳戶。說明:需要確保新添加的帳戶擁有對默認數(shù)據庫的訪問權限,其設置方法后述。注意:在SQL Server身份驗證

9、的登錄帳戶(任務3)與windows身份驗證的登錄帳戶(任務2)設置時,其帳戶名稱輸入格式的區(qū)別。前者只需輸入“帳戶名”,而后者必須一“域名帳戶名”的格式輸入。2用Transact-SQL命令刪除SQL Server登錄帳戶“abc”。在查詢分析器中執(zhí)行如下命令,即可刪除SQL Server登錄帳戶“abc”。EXEC sp_droplogin 'abc'注意:任務2和任務3刪除Windows NT/2000登錄帳戶liyan和SQL Server登錄帳戶abc時命令是的區(qū)別。(四) 按照任務4要求,給companyinfo數(shù)據庫添加數(shù)據庫用戶“李平”。1利用企業(yè)管理器實現(xiàn),其

10、操作步驟如下:(1) 在企業(yè)管理器中,展開SQl Server服務器組中相應的服務器。(2) 展開“數(shù)據庫”文件夾,然后展開將授權用戶或組訪問的數(shù)據庫companyinfo,右擊【用戶】|【新建數(shù)據庫用戶】命令。(3) 在打開的“數(shù)據庫用戶屬性”對話框中的“登錄名”框中,鍵入或選擇將授權訪問數(shù)據庫的SQL Server登錄名arlin;“用戶名”列表框中輸入“李平”, 如圖9-4所示。(4) 在“數(shù)據庫角色”列表框中,除public(默認)外,還可選擇其他數(shù)據庫角色成員。如圖9-4所示。單擊“確定”按鈕,即可完成數(shù)據庫用戶 “李平”的添加。2用Transact-SQL命令給companyinf

11、o數(shù)據庫添加名為“王軍”的用戶。在查詢分析器中執(zhí)行如下SQL命令:USE companyinfoEXEC sp_qrantdbaccess 'wangjun', '王軍'3刪除數(shù)據庫用戶“王軍”及其登錄帳戶wangjun的。(1)刪除數(shù)據庫用戶“王軍”l 在企業(yè)管理器中,展開SQl Server服務器組中相應的服務器。l 展開“數(shù)據庫”文件夾,然后展開將刪除用戶或組訪問的數(shù)據庫companyinfo。l 單擊“用戶”對象,在“詳細信息”窗格中,右擊要刪除的數(shù)據庫用戶“王軍”,然后單擊“刪除”。l 確認刪除。此時只是刪除了數(shù)據庫用戶,登錄并沒有刪除,(2)刪除名為

12、“wangjun”的登錄。操作同任務3中“abc”的刪除,在此從略。(五) 按照任務5要求,給數(shù)據庫用戶“李平”設置對表P_order的列具有修改操作的權限。方法一:通過設置數(shù)據庫用戶的屬性,實現(xiàn)用戶權限的設置 操作步驟如下:1 在企業(yè)管理器中,展開SQl Server服務器組中相應的服務器。2 展開“companyinfo”文件夾,單擊“用戶”,在右邊的窗格會顯示companyinfo數(shù)據庫的所有用戶。如圖9-5所示。圖9-5 用戶屬性快捷菜單3右擊“李平”,在打開的快捷菜單中執(zhí)行“屬性”,如9-5所示;4在打開的“數(shù)據庫用戶屬性”對話框中的“權限”選項卡中,可以進行對象的權限設置。5在 “

13、權限”選項卡中,單擊“列”按鈕,可以設置“列權限”,然后單擊“確定”按鈕。方法二:通過設置數(shù)據庫對象的權限,設置用戶的權限。操作步驟如下:1展開服務器組,然后展開服務器,展開要進行權限設置的數(shù)據庫,選中表對象。2右擊要進行權限設置的表P_order表,執(zhí)行【所有任務】|【管理權限】命令,3 在圖9-9所示的對話框中,進行對象權限的設置,還可以單擊“列”,進一步對列權限進行設置,其操作同方法一。然后單擊 “確定”按鈕。說明:用戶權限的設置還可以通過Transact-SQL命令的方法實現(xiàn),有關內容詳見本項目相關理論知識。四、相關理論知識一個網絡數(shù)據庫系統(tǒng),其數(shù)據安全的重要性是顯而易見的。SQL S

14、erver 2000數(shù)據庫的安全性通過以下幾個方面得以保證。SQL Server 2000數(shù)據庫的數(shù)據安全機制:l 網絡系統(tǒng)的安全性:可以通過在網絡系統(tǒng)邊界安裝防火墻系統(tǒng)得以實施。l 服務器的安全性:保證運行SQL Server 2000的服務器本身及其操作系統(tǒng)的安全。l SQL Server 2000登錄安全性:允許哪些用戶登錄。l 數(shù)據庫的安全性:規(guī)定用戶登錄以后可以使用哪些數(shù)據庫。l 數(shù)據庫對象的安全性:規(guī)定用戶登錄某一數(shù)據庫后,可以操作哪些數(shù)據庫對象以及怎樣操作。數(shù)據安全性主要通過 SQL Server 2000的登錄安全性、數(shù)據庫和數(shù)據庫對象的安全性幾個方面實現(xiàn),對于其它方面的安全性

15、討論請參考其它方面的安全性書籍。(一)SQL Server 2000的登錄身份驗證模式1SQL Server 2000可以在兩種安全(身份驗證)模式下工作:l Windows 身份驗證模式:Windows身份驗證模式使用戶得以通過Windows NT/2000用戶帳戶進行連接。即被授權連接SQL Server2000的Windows NT/2000用戶帳戶或組帳戶在連接SQL Server 2000時不需要提供登錄帳戶和密碼,因為SQL Server 2000認為Windows NT/2000已經對該用戶作了身份驗證。l “SQL Server和Windows” 混合模式身份驗證:混合模式使用

16、SQL Server標準登錄模式驗證時,系統(tǒng)管理員創(chuàng)建一個帳戶和密碼,并把它們存儲在SQL Server 2000系統(tǒng)數(shù)據庫中。當用戶想要連接到SQL Server 2000上時,必須提供一個已存在的SQL Server登錄帳戶和密碼。一般推薦使用Windows 身份驗證的主要原因有:一是可以提高管理效率;二是可以加快登錄速度。說明:如果將SQL Server安裝在Windows9X操作系統(tǒng)上,將只能使用SQL Server身份驗證模式,因為Windows9X不支持Windows NT/2000帳戶驗證方式。2帳戶信息的查看在SQL Server 2000企業(yè)管理器的樹型目錄中展開服務器下的“

17、安全性”,選擇“登錄”,可以查看當前服務器所有的登錄帳戶信息。,對于每一個服務器登錄帳戶,列出了該帳戶的“名稱”、“類型”、“服務器訪問權限”、“默認數(shù)據庫”以及“默認語言”。下面詳細介紹各項的含義。帳戶的類型有三種,分別是“Windows用戶”帳戶、“Windows組”帳戶和“標準” 帳戶。l “名稱”欄信息對于SQL Server帳戶,“名稱”列直接顯示用戶帳戶名稱。如SQL Server帳戶sa。對于Windows NT用戶帳戶,帳戶名采用“計算機名稱(或域名)用戶名(或組名)”的形式表示。對于Windows NT/2000內建本地組,其帳戶名中使用BUILTIN代替計算機名(或域名)。

18、l “服務器訪問”欄信息:顯示了是否允許該用戶登錄服務器,取值可以是“許可”或“拒絕”。l “默認數(shù)據庫”欄信息:是指用戶登陸SQL Server 2000后首先連接的數(shù)據庫,默認master數(shù)據庫。l “默認語言”欄信息:定義了SQL Server使用何種語言為用戶顯示信息。3SQL Server 2000的登錄身份驗證模式的設置方法。詳見本項目“相關實踐知識”。(二)SQL Server數(shù)據庫的安全性用戶成功登錄SQL Server 2000服務器后,并不自動擁有對所有數(shù)據庫的訪問權限,管理員必須在數(shù)據庫中為用戶建立一個用戶帳戶,才能使該用戶訪問數(shù)據庫。 一臺服務器有了一套服務器登錄帳戶列

19、表外,每個數(shù)據庫中都有一套相互獨立的數(shù)據庫用戶列表。每個數(shù)據庫用戶都和服務器登錄帳戶存在著一種映射關系。系統(tǒng)管理員可以將一個服務器登錄帳戶映射到用戶需要訪問的每一個數(shù)據庫中的一個用戶帳戶和角色上。一個登錄帳戶在不同的數(shù)據庫中可以映射成不同的用戶,從而擁有不同的權限。在每個SQL Server 2000數(shù)據庫中,都有兩個默認的用戶帳號:dbo和guest。dbo代表數(shù)據庫擁有者,guest用戶是為那些沒有屬于自己的用戶帳戶的SQL Server 2000登錄者作為默認的用戶,訪問具有guest用戶的數(shù)據庫。SQL Server 2000數(shù)據庫用戶的添加方法常利用SQL Server企業(yè)管理器工具

20、實現(xiàn),詳見本項目“相關實踐知識”。(三)數(shù)據庫對象的安全性創(chuàng)建一個數(shù)據庫對象時,創(chuàng)建者將自動擁有對該數(shù)據庫對象的操作權限。當一個非數(shù)據庫擁有者想訪問數(shù)據庫中的對象時,必須事先由數(shù)據庫擁有者賦予該用戶對指定對象的操作權限。權限用來指定授權用戶可以使用的數(shù)據庫對象和這些授權用戶可以對這些數(shù)據庫對象執(zhí)行的操作。通常權限分為三種類型:對象權限、語句權限和暗示性權限。1權限的種類(1) 對象權限:用戶對數(shù)據庫對象進行操作的權限,具體包括:l 針對表和視圖的操作:SELECT、INSERT、UPDATE和DELETE語句。l 針對表和視圖的行的操作:INSERT和DELETE語句。l 針對表和視圖的列的操

21、作:SELECT和UPDATE語句。l 針對存儲過程和用戶定義的函數(shù)的操作:EXECUTE語句。(2) 語句權限:指用戶是否具有權限來執(zhí)行某一語句。l BACKUP DATABASE:備份數(shù)據庫l BACEUP LOG:備份事務日志l CREATE DATABASE:創(chuàng)建數(shù)據庫l CREATE DEFAULT:創(chuàng)建默認l CREATE INDEX:創(chuàng)建索引l CREATE PROCEDURE:創(chuàng)建存儲過程l CREATE RULE:創(chuàng)建規(guī)則l CREATE TABLE創(chuàng)建表l CREATE VIEW創(chuàng)建視圖(3) 暗示性權限:指系統(tǒng)預定義的固定服務器角色成員、數(shù)據庫擁有者和數(shù)據庫對象擁有者所擁

22、有的權限。例如sysadmin固定服務器角色成員可以在服務器范圍內做任何操作,dbo可以對數(shù)據庫做任何操作,dbo可以對其擁有的數(shù)據庫對象做任何操作,它不需要明確的賦予權限。說明:暗示性權限不能明確地賦予和撤消。2權限的設置權限的設置有兩種方法,一是利用企業(yè)管理器實現(xiàn)(詳見本項目的相關實踐知識);二是利用Transact-SQL語句來實現(xiàn)。權限管理的Transact-SQL語句如下:(1) GRANTGRANT 語句用來授予語句權限和對象權限。(2) DENY 拒絕用戶帳戶上的權限: · 刪除以前授予用戶、組或角色的權限。· 停用從其它角色繼承的權限。· 確保用戶

23、、組或角色將來不繼承更高級別的組或角色的權限。 (3) REVOKE刪除以前在當前數(shù)據庫內的用戶上授予或拒絕的權限?!纠?.1】將companyinfo數(shù)據庫中,名為customer表的SELECT權賦予dbAdmin角色。程序清單如下:USE companyinfoGRANT SELECT ON TO dbAdmin【例9.2】假設companyinfo數(shù)據庫已擁有一個名為sa1的數(shù)據庫用戶,且該用戶已具有對customer表的SELECT權限,寫出拒絕sa1對customer表的SELECT權限的命令。程序清單如下:USE companyinfoDENY SELECT ON custome

24、r TO sa1【例9.3】假設companyinfo數(shù)據庫已擁有一個名為sa2的數(shù)據庫用戶,寫出授予據庫用戶sa2對customer表的“客戶ID”和“公司名稱”字段的修改權的命令。程序清單如下:USE companyinfoGRANT UPDATE(客戶ID,公司名稱) ON customer TO sa2【例9.4】假設companyinfo數(shù)據庫已擁有一個名為sa3的數(shù)據庫用戶,寫出授予據庫用戶sa3可以在companyinfo數(shù)據庫中的建表權的命令。程序清單如下:USE companyinfoGRANT CREATE TABLE TO sa3五、拓展知識(一)關于角色的概念角色是SQ

25、L Server 7.0版本引進的新概念,它代替了以前版本中組的概念,利用角色,SQL Server 管理者可以將某一組用戶設置為某一角色,這樣只要對角色進行權限設置便可以實現(xiàn)對所有用戶權限的設置,大大減少了管理員的工作量。SQL Server提供了通常管理工作的預定義服務器角色和數(shù)據庫角色。用戶還可以創(chuàng)建自己的數(shù)據庫角色,以便表示某一類進行同樣操作的用戶。當用戶需要執(zhí)行不同操作時只需要加入不同的角色中即可,不必對該用戶反復授權許可或回收許可。(二)服務器角色服務器角色是根據SQL Server的管理任務以及這些任務的重要性等級把具有SQL Server管理職能的用戶劃分為不同的用戶組,每一組

26、所具有的管理SQL Server的權限都是內置的,即不可修改、刪除和添加,只能向其中加入用戶或其它角色。服務器角色存在于各個數(shù)據庫之中,要加入用戶,該用戶必須有登錄帳戶,以便加入到角色中。 1SQL Server系統(tǒng)提供的固定服務器角色有8種,其含義如下:l system administrators 表示系統(tǒng)管理員可執(zhí)行任何動作。l security administrators 表示管理登入賬戶。l server administrators 表示設置SQL Server的各項參數(shù)。l setup administrators  表示有關replication(復制)的設置與管理

27、擴充預存程序。l process administrators 表示管理SQL Server所有執(zhí)行中的程序。l disk administrators  表示管理資料庫文件。l database administrators 表示建立和更改資料庫屬性。l bulk insert administrators 表示對可執(zhí)行bulk insert操作的管理。 2利用企業(yè)管理器向固定服務器角色添加成員的步驟如下:(1) 展開服務器組,然后展開服務器。(2) 展開“安全性”,然后單擊“服務器角色”。(3) 在“詳細信息”窗格中,如圖9-11,右擊setup Administrators角色

28、,然后單擊“屬性”。(4) 在“常規(guī)”選項卡中單擊“添加”按鈕,然后單擊要添加的登陸用戶。(三)數(shù)據庫角色和服務器一樣,數(shù)據庫中也引進了角色的概念。數(shù)據庫角色為某一用戶或某一組用戶授予不同級別的管理或訪問數(shù)據庫以及數(shù)據庫對象的權限,這些權限是數(shù)據庫專有的,并且還可以使一個用戶具有屬于同一數(shù)據庫的多個角色,SQL Server提供了兩種數(shù)據庫角色,即固定數(shù)據庫角色和用戶自定義的數(shù)據庫角色。1SQL Server提供的固定數(shù)據庫角色見表9-1所示。表9.1 固定數(shù)據庫角色db_accessadmin在數(shù)據庫中添加或刪除Windows用戶或SQL Server用戶db_backupoperator有備份數(shù)據庫的權限db_datareader查看來自數(shù)據庫中所有用戶表的全部數(shù)據db_datawriter添加、更改或刪除來自數(shù)據庫中所有用戶表的數(shù)據db_ddladmin添加、修改或除去數(shù)據庫中的對象(運行所有DDL)db_denydatareader拒絕選擇數(shù)據

溫馨提示

  • 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

提交評論