第四章數(shù)據(jù)庫安全性_第1頁
第四章數(shù)據(jù)庫安全性_第2頁
第四章數(shù)據(jù)庫安全性_第3頁
第四章數(shù)據(jù)庫安全性_第4頁
第四章數(shù)據(jù)庫安全性_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第四章數(shù)據(jù)庫安全性4.1數(shù)據(jù)庫安全性控制數(shù)據(jù)庫的安全性是指保護(hù)數(shù)據(jù)庫,防止因用戶非法使用數(shù)據(jù)庫造成數(shù)據(jù)泄露、更改或破壞。4.1數(shù)據(jù)庫安全性控制非法使用數(shù)據(jù)庫的情況計(jì)算機(jī)系統(tǒng)中,安全措施是一級一級層層設(shè)置的。數(shù)據(jù)庫安全性控制的常用方法4.2.1用戶標(biāo)識與鑒別常用方法4.2.2存取控制存取控制機(jī)制組成定義用戶權(quán)限合法權(quán)限檢查用戶權(quán)限定義和合法權(quán)檢查機(jī)制一起組成了DBMS的安全子系統(tǒng)常用存取控制方法自主存取控制(DiscretionaryAccessControl,簡稱DAC):用戶對不同的數(shù)據(jù)對象有不同的存取權(quán)限,不同用戶對同一對象有不同的權(quán)限,可轉(zhuǎn)授用戶存取權(quán)限。C2級靈活強(qiáng)制存取控制(MandatoryAccessControl,簡稱MAC):每一數(shù)據(jù)對象標(biāo)以一定密級,每一用戶對應(yīng)某一級別的許可證,只有具有合法許可證的用戶才可以存取某一對象。B1級嚴(yán)格自主存取控制DAC:同一用戶對于不同的數(shù)據(jù)對象有不同的存取權(quán)限不同的用戶對同一對象也有不同的權(quán)限用戶還可將其擁有的存取權(quán)限轉(zhuǎn)授給其他用戶強(qiáng)制存取控制MAC每一個(gè)數(shù)據(jù)對象被標(biāo)以一定的密級每一個(gè)用戶也被授予某一個(gè)級別的許可證對于任意一個(gè)對象,只有具有合法許可證的用戶才可以存取4.1.3自主存取控制方法定義存取權(quán)限存取權(quán)限

存取權(quán)限由兩個(gè)要素組成數(shù)據(jù)對象操作類型通過SQL的GRANT語句和REVOKE語句實(shí)現(xiàn)用戶權(quán)限組成數(shù)據(jù)對象操作類型定義用戶存取權(quán)限:定義用戶可以在哪些數(shù)據(jù)庫對象上進(jìn)行哪些類型的操作定義存取權(quán)限稱為授權(quán)關(guān)系數(shù)據(jù)庫系統(tǒng)中的存取權(quán)限4.1.4授權(quán)與回收一.GRANT基本格式:GRANT<權(quán)限>[,<權(quán)限>]…[ON<對象類型><對象名>]TO<用戶>[,<用戶>]…[WITHGRANTOPTION];發(fā)出GRANT:DBA數(shù)據(jù)庫對象創(chuàng)建者(即屬主Owner)擁有該權(quán)限的用戶按受權(quán)限的用戶一個(gè)或多個(gè)具體用戶PUBLIC(全體用戶)不允許循環(huán)授權(quán)例1.把查詢Student表權(quán)限授給用戶U1GRANTSELECTONTABLEStudentTOU1;例2.把對表Student和表Course的全部權(quán)限授予用戶U2和U3.GRANTALLPRIVILIGESONTABLEStudent,CourseTOU2,U3;例3.把對SC表的查詢權(quán)限授給所有用戶GRANTSELECTONTABLESCTOPUBLIC;例4.把查詢Student表和修改學(xué)生學(xué)號的權(quán)限授給用戶U4.GRANTUPDATE(Sno),SELECTONTABLEStudentTOU4;例5.把對表SC的INSERT權(quán)限授予U5用戶,并允許他再將此權(quán)限授予其他用戶。GRANTINSERTONTABLESCTOU5WITHGRANTOPTION;例6.GRANTINSERTONTABLESCTOU6WITHGRANTOPTION;例7.GRANTINSERTONTABLESCTOU7;例8.DBA把在數(shù)據(jù)庫S-C中建立表的權(quán)限授予用戶U8.GRANTCREATETABONDATABASES_CTOU8;二.REVOKE基本格式:REVOKE<權(quán)限>[,<權(quán)限>]…[on<對象類型><對象名>]FROM<用戶>[,<用戶>]…;例9.把用戶U4修改學(xué)生學(xué)號的權(quán)限收回.REVOKEUPDATE(Sno)ONTABLEStudentFROMU4;例10.收回所有用戶對SC表的查詢權(quán)限.REVOKESELECTONTABLESCFROMPUBLIC;例11.把用戶U5對表SC的INSERT權(quán)限收回.REVOKEINSERTONTABLESCFROMU5;

DBA:擁有所有對象的所有權(quán)限不同的權(quán)限授予不同的用戶用戶:擁有自己建立的對象的全部的操作權(quán)限GRANT:授予其他用戶被授權(quán)的用戶“繼續(xù)授權(quán)”許可:再授予所有授予出去的權(quán)力在必要時(shí)又都可用REVOKE語句收回三.創(chuàng)建數(shù)據(jù)庫模式的權(quán)限D(zhuǎn)BA在創(chuàng)建用戶時(shí)實(shí)現(xiàn)CREATEUSER語句格式CREATEUSER<username>[WITH][DBA|RESOURCE|CONNECT]權(quán)限與可執(zhí)行的操作對照表4.1.5數(shù)據(jù)庫角色數(shù)據(jù)庫角色:被命名的一組與數(shù)據(jù)庫操作相關(guān)的權(quán)限角色是權(quán)限的集合可以為一組具有相同權(quán)限的用戶創(chuàng)建一個(gè)角色簡化授權(quán)的過程一.角色的創(chuàng)建CREATEROLE<角色名>二.給角色授權(quán)GRANT<權(quán)限>[,<權(quán)限>]…ON<對象類型>對象名TO<角色>[,<角色>]…三.將一個(gè)角色授予其他的角色或用戶GRANT<角色1>[,<角色2>]…TO<角色3>[,<用戶1>]…[WITHADMINOPTION]四.角色權(quán)限的收回REVOKE<權(quán)限>[,<權(quán)限>]…ON<對象類型><對象名>FROM<角色>[,<角色>]…例12.通過角色來實(shí)現(xiàn)將一組權(quán)限授予一個(gè)用戶。1.首先創(chuàng)建一個(gè)角色R1CREATEROLER1;2.然后使用GRANT語句,使角色R1擁有Student表的SELECT、UPDATE、INSERT權(quán)限GRANTSELECT,UPDATE,INSERTONTABLEStudentTOR1;3.將這個(gè)角色授予王平,張明,趙玲。使他們具有角色R1所包含的全部權(quán)限GRANTR1TO王平,張明,趙玲;4.可以一次性通過R1來回收王平的這3個(gè)權(quán)限REVOKER1FROM王平;例13.角色的權(quán)限修改GRANTDELETEONTABLEStudentTOR1例14.REVOKESELECTONTABLEStudentFROMR1;4.1.6強(qiáng)制存取控制(MAC)方法自主存取控制缺點(diǎn):可能存在數(shù)據(jù)的“無意泄露”原因:這種機(jī)制僅僅通過對數(shù)據(jù)的存取權(quán)限來進(jìn)行安全控制,而數(shù)據(jù)本身并無安全性標(biāo)記解決:對系統(tǒng)控制下的所有主客體實(shí)施強(qiáng)制存取控制策略

強(qiáng)制存取控制(MAC)保證更高程度的安全性用戶不能直接感知或進(jìn)行控制適用于對數(shù)據(jù)有嚴(yán)格而固定密級分類的部門

軍事部門政府部門主體是系統(tǒng)中的活動實(shí)體DBMS所管理的實(shí)際用戶代表用戶的各進(jìn)程客體是系統(tǒng)中的被動實(shí)體,是受主體操縱的文件基表索引視圖敏感度標(biāo)記(Label)絕密(TopSecret)機(jī)密(Secret)可信(Confidential)公開(Public)主體的敏感度標(biāo)記稱為許可證級別(ClearanceLevel)客體的敏感度標(biāo)記稱為密級(ClassificationLevel)強(qiáng)制存取控制規(guī)則(1)僅當(dāng)主體的許可證級別大于或等于客體的密級時(shí),該主體才能讀取相應(yīng)的客體(2)僅當(dāng)主體的許可證級別等于客體的密級時(shí),該主體才能寫相應(yīng)的客體修正規(guī)則主體的許可證級別<=客體的密級主體能寫客體規(guī)則的共同點(diǎn)禁止了擁有高許可證級別的主體更新低密級的數(shù)據(jù)對象DAC與MAC共同構(gòu)成DBMS的安全機(jī)制實(shí)現(xiàn)MAC時(shí)要首先實(shí)現(xiàn)DAC原因:較高安全性級別提供的安全保護(hù)要包含較低級別的所有保護(hù)DAC+MAC安全檢查示意圖

SQL語法分析&語義檢查

DAC檢查安全檢查MAC檢查

繼續(xù)語義檢查4.2視圖機(jī)制把要保密的數(shù)據(jù)對無權(quán)存取這些數(shù)據(jù)的用戶隱藏起來,對數(shù)據(jù)提供一定程度的安全保護(hù)主要功能是提供數(shù)據(jù)獨(dú)立性,無法完全滿足要求間接實(shí)現(xiàn)了支持存取謂詞的用戶權(quán)限定義例15.建立計(jì)算機(jī)系學(xué)生的視圖,把對該視圖的SELECT權(quán)限授于王平,把該視圖上的所有操作權(quán)限授于張明

CREATEVIEWCS_StudentASSELECT*FROMStudentWHERESdept='CS';GRANTSELECTONCS_StudentTO王平;

GRANTALLPRIVILIGESONCS_StudentTO張明;4.3審計(jì)審計(jì)功能把用戶對數(shù)據(jù)庫的所有操作自動記錄下來放入審計(jì)日志中。DBA可以利用審計(jì)跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的人、時(shí)間和內(nèi)容等。4.3審計(jì)審計(jì)的分類用戶級審計(jì)針對自己創(chuàng)建的數(shù)據(jù)庫表或視圖進(jìn)行審計(jì)記錄所有用戶對這些表或視圖的一切成功和(或)不成功的訪問要求以及各種類型的SQL操作系統(tǒng)級審計(jì)DBA設(shè)置監(jiān)測成功或失敗的登錄要求監(jiān)測GRANT和REVOKE操作以及其他數(shù)據(jù)庫級權(quán)限下的操作AUDIT語句:設(shè)置審計(jì)功能NOAUDIT語句:取消審計(jì)功能例16.對修改SC表結(jié)構(gòu)或修改SC表數(shù)據(jù)的操作進(jìn)行審計(jì)AUDITALTER,UPDATEONSC;例17.取消對SC表的一切審計(jì)NOAUDITALTER,UPDATEONSC;4.4數(shù)據(jù)加密數(shù)據(jù)加密數(shù)據(jù)加密是防止數(shù)據(jù)庫中數(shù)據(jù)在存儲和傳輸中失密的有效手段。數(shù)據(jù)加密的基本思想:根據(jù)一定的算法將原始數(shù)據(jù)(術(shù)語為明文)變換為不可直接識別的格式(術(shù)語為密文),從而使得不知道解密算法的人無法獲知數(shù)據(jù)的內(nèi)容。加密方法:替換方法。使用密鑰將明文中的每一個(gè)字符轉(zhuǎn)換為密文中的一個(gè)字符。置換方法。僅將明文的字符按不同的順序重新排列。

將這兩種方法合起來就能提供相當(dāng)高的安全程度。習(xí)題有兩個(gè)關(guān)系模式:職工(職工號,姓名,年齡,職務(wù),工資,部門號)部門(部門號,名稱,經(jīng)理名,地址,電話號)

溫馨提示

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

評論

0/150

提交評論