精編安全生產(chǎn)數(shù)據(jù)庫的安全性與完整性_第1頁
精編安全生產(chǎn)數(shù)據(jù)庫的安全性與完整性_第2頁
精編安全生產(chǎn)數(shù)據(jù)庫的安全性與完整性_第3頁
精編安全生產(chǎn)數(shù)據(jù)庫的安全性與完整性_第4頁
精編安全生產(chǎn)數(shù)據(jù)庫的安全性與完整性_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、隨心編輯,值得下翩有!YOUR COMPANY NAME IS HERELOGO專業(yè)|專注|精心|卓越beik6Zhang【安全生產(chǎn)】數(shù)據(jù)庫的安全性與完整性數(shù)據(jù)庫的安全性和完整性一、實驗?zāi)康暮鸵? 、理解數(shù)據(jù)庫安全性和完整性的概念。2、掌握 SQL Server2000 中有關(guān)用戶、角色及操作權(quán)限管理等安全性技術(shù)。3、掌握 SQL Server2000 中有關(guān)約束、規(guī)則、默認值的使用等完整性技術(shù)。二、實驗內(nèi)容和步驟 數(shù)據(jù)庫的安全性1、SQL Server 的安全模式認證是指來確定登陸 SQL SERVER 的用戶的登陸賬號和密碼是否正確, 以此來驗證其是否具有 連接 SQL SERVER 的

2、權(quán)限,但是通過認證階段并不代表能夠訪問數(shù)據(jù),用戶只有在獲取訪問數(shù)據(jù)庫 的權(quán)限之后才能對服務(wù)器上的數(shù)據(jù)庫進行權(quán)限許可下的各種操作。設(shè)置 SQL Server 的安全認證模式:使用企業(yè)管理器來設(shè)置,步驟如下:Step1: 展開服務(wù)器組,右擊需要設(shè)置的 SQL 服務(wù)器,在彈出菜單中選擇“屬性”。Step2: 在彈出的 SQL 服務(wù)器屬性對話框中,選擇“安全性”選項卡。Step3: 選擇僅 Windows 選項( NT/2000 驗證模式)或 SQL Server 和 Windows 選項(混合模式) 。注:設(shè)置改變后,用戶必須停止并重新啟動 SQL Server 服務(wù),設(shè)置才生效。如果設(shè)置成 NT

3、認證模式,則用戶在登錄時輸入一個具體的登陸名時, SQL SERVER 將忽略該 登錄名。添加 SQL Server 賬號: 若用戶沒有 Windows NT/2000 賬號,則只能為他建立 SQL Server賬號。利用企業(yè)管理器Step1:展開服務(wù)器,選擇安全性 / 登錄。Step2:右擊登錄文件夾,出現(xiàn)彈出式菜單。Step3:在彈出式菜單中選擇“新建登錄”選項后,就會出現(xiàn)一個登錄屬性對話框。step4:在名稱框中輸入一個不帶反斜杠的用戶名,選中 SQL Server 身份驗證單選按鈕,并在密碼框中輸入口令(如下圖所示)Step5:單擊“確定”按鈕,出現(xiàn)確認密碼窗口,再輸入密碼,單擊“確定

4、”按鈕,創(chuàng)建完成。利用T_SQL 添加 SQL Server 賬號:執(zhí)行系統(tǒng)存儲過程 sp_addlogin :Sp_addlogin login_id,passwd,defdb,deflanguage其中: Login_id 為注冊標識或 SQL Server 用戶名; Passwd 為口令,默認口令是 NULL (即不 需要口令); Defdb 指定用戶在注冊時連接到的默認數(shù)據(jù)庫,如果沒有指定默認數(shù)據(jù)庫,則默認數(shù) 據(jù)庫是 master ; Deflanguage 說明用戶注冊到 SQL Server 時使用的默認語言代碼。例如:修改登錄賬號的屬性 利用企業(yè)管理器:用鼠標雙擊要修改屬性的登錄

5、賬號,在屬性對話框中進行修改。利用 T_SQL :涉及以下幾個系統(tǒng)存儲過程: sp_password 修改賬號口令, sp_defaultdb 修 改賬號默認數(shù)據(jù)庫, sp_defaultlanguage 修改賬號默認語言。其中,系統(tǒng)存儲過程 sp_password 的格式是:sp_password old_passwd,new_passwd,login_id例如: 刪除登錄賬號 利用企業(yè)管理器:右擊要刪除的賬號,在彈出的快捷菜單中選擇“刪除”命令,在確認對話 框中單擊“是”按鈕,這個登錄賬號就永久被刪除了。 利用T_SQL :使用系統(tǒng)存儲過程 sp_droplogin 來刪除SQL Serv

6、er登錄賬號。如:例如:2、管理數(shù)據(jù)庫用戶:安裝SQL Server之初只有兩個用戶,一個是 sa (系統(tǒng)管理員),另一個是guest (系統(tǒng)安裝時 創(chuàng)建的一個可以對樣板數(shù)據(jù)庫作最基本查詢的用戶) 。登陸賬號 sa 自動與每一個數(shù)據(jù)庫用戶 dbo 相 關(guān)聯(lián)。添加數(shù)據(jù)庫的用戶利用企業(yè)管理器Step1: 在企業(yè)管理器中,展開服務(wù)器中的數(shù)據(jù)庫文件夾,再展開要添加用戶的數(shù)據(jù)庫,右擊用 戶目錄,在彈出的快捷菜單中選擇“新建數(shù)據(jù)庫用戶”命令。Step2: 打開新建數(shù)據(jù)庫用戶對話框。Step3: 從登錄名下拉列表框中選擇一個登錄賬號。Step4: 在用戶名框中輸入用戶名,默認情況下它被設(shè)置為登錄賬號名。St

7、ep5: 若需要,在數(shù)據(jù)庫角色成員列表中選中除 public 外的其他角色。利用 T_SQL :執(zhí)行系統(tǒng)存儲過程 sp_adduser ,格式是:sp_adduser loginame = login , name_in_db = user , grpname = group loginame = login 用戶的登錄名稱。name_in_db = user 新用戶的名稱。如果沒有指定 user ,則用戶的名稱默認為 login 名 稱。指定 user 即為新用戶在數(shù)據(jù)庫中給予一個不同于SQL Server 上的登錄 ID 的名稱。grpname = group角色,新用戶自動地成為其成員,

8、默認值為 NULL 。例如:刪除數(shù)據(jù)庫用戶:相當于刪除一個登錄賬號在這個數(shù)據(jù)庫中的映射。利用企業(yè)管理器:右擊要刪除的用戶,從彈出的快捷菜單中選擇“刪除”命令,在提示的對話框中確認,該用戶就被刪除了。利用T_SQL :使用系統(tǒng)存儲過程 sp_dropuser例如:3、管理數(shù)據(jù)庫角色創(chuàng)建自定義數(shù)據(jù)庫角色使用企業(yè)管理器Step1: 在企業(yè)管理器中, 展開服務(wù)器中的數(shù)據(jù)庫文件夾, 再展開要添加角色的數(shù)據(jù)庫, 如 pubs 數(shù)據(jù)庫,右擊角色目錄,在彈出的快捷菜單中選擇“新建數(shù)據(jù)庫角色”命令。Step2: 在打開的新建數(shù)據(jù)庫角色對話框中,在名稱框中輸入數(shù)據(jù)庫新角色的名稱,如NewRole1, 并選中標準角

9、色單選按鈕。Step3 :可以為角色添加用戶或其他角色,若不添加,則創(chuàng)建一個暫無成員的角色。若單擊對話框中的添加按鈕,出現(xiàn)添加角色成員對話框,選擇要添加的用戶,單擊確定按鈕,完成角色創(chuàng)建。使用 T_SQL :使用系統(tǒng)存儲過程 sp_addrole 可以創(chuàng)建數(shù)據(jù)庫新角色,同時使用系統(tǒng)存儲過程 sp_addrolemember 和 sp_droprolemember 分別用于向角色中增加或從角色中刪除成員。如在 pubs 數(shù)據(jù)庫中創(chuàng)建 NewRole2 新角色,并且將用戶 newlg 添加到該角色中:用戶名與角色名必須同時存在,且位于同一個數(shù)據(jù)庫中。刪除用戶自定義角色:不能刪除一個有成員的角色,在

10、刪除這樣的角色之前,應(yīng)先刪除其成 員。只能刪除自定義的角色,系統(tǒng)的固定角色不能被刪除。利用企業(yè)管理器:右擊要刪除的用戶自定義角色,從彈出的快捷菜單中選擇“刪除”命令, 在提示的對話框中確認,該用戶自定義角色就被刪除了。利用T_SQL :使用系統(tǒng)存儲過程 sp_droprole如:4 、權(quán)限管理: 分為語句權(quán)限和對象權(quán)限管理兩類。 前者是對用戶執(zhí)行語句或命令的權(quán)限的管理; 后者是對數(shù)據(jù)庫及其對象的操作權(quán)限的控制。在 SQL SERVER 中,我們使用 GRANT 、REVOKE 、DENY 三種命令來管理權(quán)限。 利用企業(yè)管理器管理權(quán)限 管理語句權(quán)限Step1: 在企業(yè)管理器中, 展開服務(wù)器中的數(shù)

11、據(jù)庫文件夾, 右擊要修改權(quán)限的數(shù)據(jù)庫, 如 pubs 數(shù) 據(jù)庫,在彈出的快捷菜單中選擇“屬性”命令,打開數(shù)據(jù)庫屬性對話框。Step2: 單擊權(quán)限標簽,打開權(quán)限選項卡。Step3: 在權(quán)限選項卡中列出數(shù)據(jù)庫中所有的用戶和角色,以及所有的語句權(quán)限。Step4 :設(shè)置完畢后,單擊確定按鈕,使設(shè)置生效。 管理對象權(quán)限Step1: 在企業(yè)管理器中展開服務(wù)器中的數(shù)據(jù)庫文件夾,再展開要進行角色對象權(quán)限的數(shù)據(jù)庫,如 pubs 數(shù)據(jù)庫,選中角色目錄,在右邊窗口的角色列表中雙擊 NewRole2 角色,打開角色屬性對 話框。Step2: 在該對話框中單擊權(quán)限按鈕,打開權(quán)限對話框,其中列出了數(shù)據(jù)庫中的所有對象,和這

12、 些對象可以執(zhí)行的操作, 給角色 NewRole2 授予對表 authors 執(zhí)行 SELECT 的權(quán)限,則應(yīng)在 SELECT 與 authors 的交叉處的方框中打鉤。Step3: 單擊圖中的“列”按鈕,可以指定對列操作的權(quán)限。Step4: 設(shè)置完畢后,單擊確定按鈕,使設(shè)置生效。利用 T_SQL 管理權(quán)限GRANT ALL|statement_list TO PUBLIC|name_list其中:ALL 即全部語句,只有系統(tǒng)管理員可以使用此選項,因為只有系統(tǒng)管理員可以授予或收回CREATE DATABASE 的權(quán)限;statement_list 給出授權(quán)的語句列表,這些語句可以是 CREAT

13、E DATABASE (如果執(zhí)行這個語 句的用戶是系統(tǒng)管理員) 、CREATE DEFAULT 、 CREATE PROCEDURE 、CREATE RULE、 CREATE TABLE、 CREATE VIEW 等;PUBLIC 說明這些語句的執(zhí)行權(quán)限將授予所有的用戶;name_list 是數(shù)據(jù)庫用戶名,說明這些語句的執(zhí)行權(quán)限授予哪些用戶。例:將 pubs 數(shù)據(jù)庫 authors 表的 zip 列和 city 列的修改權(quán)限授予“我的登錄”這名用戶。 收回語句授權(quán): REVOKEALL|statement_listFROMPUBLIC|name_list例:將 pubs 數(shù)據(jù)庫 authors

14、 表的 zip 列的修改權(quán)限從用戶“我的登錄”收回。 數(shù)據(jù)庫的完整性 完整性是指數(shù)據(jù)的正確性和有效性,是為防止數(shù)據(jù)庫中存在不符合語義規(guī)定的數(shù)據(jù)和防止因錯 誤信息的輸入輸出造成無效操作或錯誤信息而提出的。約束:約束是強制數(shù)據(jù)完整性的第一選擇。約束有:檢查約束、缺省約束、唯一約束、非空約 束、主鍵約束和外鍵約束等 6 種。使用企業(yè)管理器實施約束例:為 PUBS 數(shù)據(jù)庫的 authors 表的“ city ”字段創(chuàng)建一個缺省約束, 缺省值為 “ UNKNOWN在企業(yè)管理器中,展開服務(wù)器中的數(shù)據(jù)庫文件夾,再展開要操作的數(shù)據(jù)庫,如 PUBS 數(shù)據(jù)庫, 單擊“表”,在右邊窗口中顯示所有在 PUBS 數(shù)據(jù)庫

15、中的表。 右擊要設(shè)置缺省的表 AUTHORS ,在彈 出的快捷菜單中選擇“設(shè)計表”,單擊設(shè)置缺省值的字段,將彈出下圖所示窗口,在下邊屬性設(shè)置 欄的默認值輸入框中輸入相應(yīng)的默認值即可。如上面的 DF 默認值約束語句執(zhí)行完畢后,可以看到如下顯示: 繼續(xù)下面試驗前,先執(zhí)行以下語句:create database 學生選課 gouse 學生選課 create table Student(Sno char(9) primary key,Sname char(20),Ssex char(2),Sage smallint,Sdept char(20)create table Course(Cno char(

16、4) primary key,Cname char(20),Cpno char(4),Ccredit smallint)create table SC(Sno char(9),Cno char(4),Grade smallint,primary key (Sno,Cno)例:將 SC 表的 Sno 字段設(shè)置為外鍵,該外鍵參考表 Student 中的主鍵 Sno 。在企業(yè)管理器中,展開服務(wù)器中的數(shù)據(jù)庫文件夾,再展開選課 數(shù)據(jù)庫,單擊“表” 。右擊要設(shè)置外鍵的表sc,在彈出的快捷菜單中選擇“設(shè)計表”,在打開的表結(jié)構(gòu)對話框中,點擊工具欄上的 擊”管理關(guān)系”按鈕,系統(tǒng)將彈出下圖所示窗口,單擊”新建”按

17、鈕,系統(tǒng)給出默認的關(guān)系名,選 擇要參考主鍵的表名 Student及表中的主鍵 Sno,要設(shè)置外鍵的表名 SC及外鍵列名Sno,單擊” 關(guān)閉”按鈕,外鍵約束創(chuàng)建完成。使用 T_SQL 語句實施約束例:為 “ Sdept ”字段創(chuàng)建一個檢查約束, 使得所在系必須是”計算機”、 ”數(shù)學”或”信息” 之一。例:為 Student 表的“ Sname ”字段增加一個唯一性約束例:為 SC 表建立外鍵 ,依賴于 Course 表的 fk 外碼約束。例:禁止啟用 Student 表的“ Sdept ”的 CHECK 約束 ck。2 、默認值對象:是數(shù)據(jù)庫對象之一,它指定在向數(shù)據(jù)庫中的表插入數(shù)據(jù)時,如果用戶沒

18、有明確 給出某列的值, SQL Server 將自動指定該列使用默認值。使用企業(yè)管理器管理默認值在 PUBS 數(shù)據(jù)庫下執(zhí)行 create table newtable(pk char,odate datetime,newdate datetime) 創(chuàng)建一個默認的日期值,默認值為2008-8-8 :在企業(yè)管理器中,展開服務(wù)器中的數(shù)據(jù)庫文件夾,再展開pubs 數(shù)據(jù)庫,右擊”默認”,在彈出的快捷菜單中選擇”新建默認”, 系統(tǒng)將彈出 “默認屬性”窗體。 在”名稱”對應(yīng)的輸入框中輸 入默認值的名稱” OLYMPIC ”,在值對應(yīng)的輸入框中輸入 CONVERT(DATETIME,2008/8/8) ;單

19、 擊”確定”按鈕即完成默認值的創(chuàng)建。 將默認值綁定到 newtable 表的 odate 字段,然后解除綁定。在“默認屬性” 窗體中,點擊”綁定”,選擇待綁定的默認值,再點擊”綁定列”,選擇待綁 定的表和字段,最后點擊”確認”,可將默認值綁定到指定表的列 刪除默認值:刪除前必須解除該默認值的所有綁定。在企業(yè)管理器中,展開服務(wù)器中的數(shù)據(jù) 庫文件夾,再展開 PUBS 數(shù)據(jù)庫,單擊”默認”,再右擊右邊窗口中的默認值 OLYMPIC ,在彈出 的快捷菜單中選擇”刪除”按鈕即可。使用 T_SQL 語句進行默認值操作設(shè)定默認值:創(chuàng)建一個名為BirthDate,值為GETDATE的默認值。 將默認值綁定到列

20、 解除默認綁定 刪除默認值3 、規(guī)則對象:規(guī)則是數(shù)據(jù)庫對象之一。它指定向表中某列插入或更新數(shù)據(jù)時,限制輸入新值的 取值范圍。規(guī)則可以是值的清單、值的范圍或值必須滿足的條件。利用企業(yè)管理器進行規(guī)則操作 創(chuàng)建規(guī)則:為 Student表中的Sno字段創(chuàng)建一個規(guī)則 Rulel ,使sno的值大于00000且小 于 99999 。在企業(yè)管理器中,展開服務(wù)器中的數(shù)據(jù)庫文件夾,再展開學生選課 數(shù)據(jù)庫,右擊”規(guī)則”,在彈出的快捷菜單中單擊選擇”新建規(guī)則”, 系統(tǒng)將彈出 “規(guī)則屬性”窗口; 在”名稱”輸入框中 輸入規(guī)則名稱 Rule1 ,在”文本”輸入框中輸入規(guī)則的文本: x00000 and x99999 ,單擊” 確定”按鈕,即可完成規(guī)則的創(chuàng)建。 將規(guī)則綁定到指定的字段上:點擊規(guī)則屬性對話框上的”綁定列”按鈕,在”表”中選擇對應(yīng)的表 student ,然后在左邊的窗格中選擇欲

溫馨提示

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

評論

0/150

提交評論