版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第九章
數據庫的安全性和完整性計算機系統的安全性計算機系統的安全性是指為計算機系統建立和采取的各種安全保護措施,以保護計算機系統中的硬件、軟件和數據,防止其因偶然或惡意的原因使系統遭到破壞,數據遭到更改或泄漏等。計算機系統安全問題的分類技術安全類技術安全是指計算機系統中采用具有一定安全性的硬件、軟件來實現對計算機系統及其所存數據的安全保護,當計算機受到有意的或無意的攻擊時仍能保證系統的正常運行,保證系統內的數據不增加、不丟失、不泄露。管理安全類技術安全之外的,諸如軟硬件意外故障、場地的意外事故、管理不善導致的計算機設備和數據介質的物理破壞、丟失等安全問題視為管理安全。政策法律類指政府部門建立的有關計算機犯罪、數據安全保密的法律道德準則和政策法規、法令。可信計算機評測標準1985年,美國國防部制定了可信計算機評估標準TCSEC(TrustedComputerSystemEvaluationCriteria)。1991年4月,美國國家計算機安全中心NCSC發布《可信計算機系統評估標準關于數據庫系統的解釋TDI(TrustedDatabaseInterpretation),將TCSEC擴展到數據庫管理系統。它們從安全策略、責任、保證、文檔四個方面描述了安全級別劃分的指標??尚庞嬎銠C評測標準(續I)安全級別定義A1驗證設計(VerifiedDesign)B3安全域(SecurityDomain)B2結構化保護(StructuralProtection)B1標記安全保護(LabeledSecurityProtection)C2受控存取保護(ControlledAccessProtection)C1自主安全保護(DiscretionarySecurityProtection)D最小保護(MinimalProtection)對數據庫的安全威脅原則上,凡是造成對數據庫內存儲數據的非授權訪問–讀取,或非授權的寫入–增加、刪除、修改等,都屬于對數據庫的數據安全造成了威脅或破壞。另一方面,凡是影響授權用戶以正常方式使用數據庫系統的數據服務的,也稱之為造成侵犯,對數據庫的安全形成了威脅或破壞。對數據庫的安全威脅的分類偶然地、無意地接觸或修改DBMS管理下的數據自然的或意外的事故硬件或軟件的故障/錯誤導致數據丟失人為的失誤,如錯誤的輸入和應用系統的不正常使用。對數據庫的安全威脅的分類(I)蓄意的侵犯和敵意的攻擊授權用戶可能濫用其權力信息的非正常擴散-泄密由授權讀取的數據推論出不應訪問的數據對信息的非正常修改敵對方的攻擊,內部的或外部的非授權用戶從不同渠道進行攻擊。敵對方對軟件和硬件的蠻力破壞繞過DBMS直接對數據進行讀寫病毒、特洛伊木馬、天窗通過各種途徑干擾DBMS的正常工作狀態,使之在正當用戶提出數據請求時,不能正常提供服務。數據庫的安全性數據庫的安全性是指保護數據庫以防止不合法的使用所造成的數據泄漏、更改和破壞。它包括兩個方面的含義:向授權用戶提供可靠的信息服務。同時,拒絕非授權的對數據的存取訪問請求,保證數據庫管理下的數據的可用性、完整性和一致性,進而保護數據庫所有者和使用者的合法權益。數據庫安全性控制管理、技術、操作多個方面物理、網絡、系統、應用多個層次設計、構建、運行、維護整個周期安全數據庫安全性控制數據庫安全控制涉及多個方面,它可分為內部安全控制和外部安全控制。內部安全控制由計算機系統的軟硬件實現。它必須與管理系統物理存取的適當的外部安全控制相配合。外部安全控制解決內部安全控制不能解決的問題外部安全控制實體安全控制劃定安全區域,設置安全屏障和建立安全控制評估安全風險,將涉密設備和材料放置在不同的安全區域人員、組織安全控制建立安全管理機構和相應安全評估、管理制度明確組織間的訪問安全關系明確明確組織內的安全角色和責任建立人員聘用和考察制度,通過合同條款和保密協議,明確每個人的安全保密責任建立責任追究制度外部安全控制過程安全控制確定業務操作過程的安全需求制訂訪問控制規則,并明確個人用戶(或組用戶)的權限建立訪問管理制度,確定用戶、特權、密碼等的管理措施和操作過程規定明確用戶在密碼使用和設備安全等方面的責任建立監測和審查制度建立安全事故管理制度數據庫安全性控制數據庫系統的安全保護是由多個層次的構成的。本章只涉及由數據庫本身提供的安全機制。網絡DBMSOSDB用戶標識和鑒別網絡系統安全保護存取控制操作系統安全保護數據加密用戶標識與鑒別用戶標識和鑒別是系統提供的最外層安全保護措施。標識是指系統采用一定的方式標識其用戶或應用程序的名字或身份。鑒別是指系統在用戶或應用程序登錄時判斷其是否為合法的授權用戶。應用系統、網絡系統、操作系統、DBMS都可以進行用戶標識和鑒別,通常的做法是采用用戶名和口令。存取控制存取控制確保合法用戶按照指定的權限使用DBMS和訪問數據,而非法用戶或不具有相關權限的用戶則不能。存取控制機制主要包括兩個部分:定義用戶權限,并將用戶權限記錄到數據字典中,形成安全規則或授權規則。其中,用戶權限是指不同的用戶對于不同的數據對象允許執行的操作權限。合法權限檢查,每當用戶發出數據庫操作請求后,DBMS根據數據字典中的安全規則進行合法權限檢查,決定是否接受用戶的操作請求。用戶權限定義和合法權限檢查機制一起組成了DBMS的安全子系統。DAC與MAC存取控制可以分為:自主存取控制(discretionaryaccesscontrol,簡稱DAC)。用戶對于不同的數據對象擁有不同的存取權限,不同的用戶對同一對象也有不同的權限,而且用戶還可以將其擁有的權限轉授給其他用戶。強制存取控制(mandatoryaccesscontrol,簡稱MAC)。每一個數據對象被標以一定的密級,每一個用戶也被授予某一個級別的許可證。對于任一個對象,只有具有合法許可證的用戶才可以存取。自主存取控制方法用戶權限由兩個要素組成,數據對象和操作類型。定義一個用戶的存取權限就是要定義這個用戶可以在哪些數據對象上進行哪些類型的操作,在數據庫系統中稱之為授權。數據對象操作類型模式概念模式外模式內模式建立、修改、檢索建立、修改、檢索建立、修改、檢索數據表屬性列查找、插入、刪除、修改查找、插入、刪除、修改SQL的數據控制當數據庫管理員建立了一個新用戶之后,必須授予它一定的權限,該用戶才能使用數據庫。在數據庫系統中可以授予用戶兩類權限:用戶級權限用戶級權限是數據庫管理員為每個用戶授予的特定權限。這種權限與整個數據庫相關,與數據庫中具體的關系無關。這種權限是對用戶使用整個數據庫的權限的限定。關系級權限關系級權限是數據庫管理員或數據庫對象的擁有者為用戶授予的與關系或視圖有關的權限。這種權限是對用戶使用關系和視圖的權限的限定。角色與用戶組為了管理數據庫特權的方便,數據庫還支持角色和用戶組的概念。角色是一組權限的集合,可以把它授予用戶或其他角色。當把某個角色授予用戶(或角色)或從用戶(或角色)處收回時,就同時授予或收回了該角色代表的全部權限。用戶組是一組具有相同特性用戶的集合。在授權或收回權限時,可以以用戶組為單位進行。用戶級權限與角色的授予與收回在SQL語言中,通過Grant語句為用戶授予用戶級權限或角色,其語法格式為:Grant<用戶級權限>|<角色>[{,<用戶級權限>|<角色>}]To<用戶名>|<角色>|public[{,<用戶名>|<角色>}][WithGrantOption]其中,public指數據庫中的全部用戶。WithGrantOption則允許被授權的用戶將指定的用戶級權限或角色授予其他用戶。用戶級權限與角色的授予與收回為用戶授予用戶級權限GrantCreateSessiontoSCOTT;為用戶授予角色GrantConnecttoSCOTT;將權限授予角色GrantCreatetabletoStudent_role;將角色授予角色GrantResourcetoStudent_role;將角色授予用戶組GrantStudent_roletoPUBLIC;用戶級權限與角色的授予與收回當要取消一個用戶或角色的權限時,可以使用REVOKE語句將其收回:Revoke<用戶級權限>|<角色>[{,<用戶級權限>|<角色>}]From<用戶名>|<角色>|public[{,<用戶名>|<角色>}]例:取消用戶SCOTT的CreateTable權限。RevokeCreateTableFromSCOTT;關系級權限的授予與收回每一個用戶都擁有自己定義的數據庫對象如(基本表、視圖等),除了他自己和擁有DBA權限的用戶以外,其他用戶都不能訪問這些數據庫對象。如果想和其他用戶共享其中一部分數據庫對象,就必須將這些數據庫對象上的部分或全部權限授予其他用戶。其語法格式為:GrantALL|<權限>[{,<權限>}]On<表名>|<視圖名>[{,<表名>|<視圖名>}]To{<用戶>[{,<用戶>}]|public}[WithGrantOption]關系級權限的授予與收回授予用戶Liming在Student表上的Select和Insert權限。
GrantSelect,UpdateOnStudentToLimingWithGrantOption;Liming授予用戶SCOTT在Student表的Sno列上的Update權限。
GrantUpdate(Sno)OnStudentToSCOTT;將Student表上的全部權限授予全體用戶。
GrantALLOnStudentToPUBLIC;關系級權限的授予與收回回收權限RevokeALL|<表級權限>[{,<表級權限>}]On<表名>|<視圖名>[{,<表名>|<視圖名>}]
From{<用戶>[{,<用戶>}]|PUBLIC}例:收回Liming對Student表的全部權限RevokeALLOnStudentFromLiming;收回權限時,若該用戶已將權限授予其它用戶,則也一并收回。用戶權限定義表用戶名數據對象名允許的操作類型王平關系StudentSELECT張明霞關系StudentUPDATE張明霞關系CourseALL張明霞Sc.GradeUPDATE張明霞Sc.SnoSELECT張明霞Sc.CnoSELECT利用視圖實現安全控制為不同的用戶定義不同的視圖,可以將用戶對數據的訪問限制在一定的范圍內。例:限制王平只能檢索Student表中計算機系學生的學號和姓名。CreateViewCS_StudentAsSelectSno,SnameFromStudentWhereSdept=‘CS’;GrantSelectOnCS_StudentToWangping;強制存取方法主體是系統中的活動實體,既包括DBMS所管理的實際用戶,也包括代表用戶的各進程??腕w是系統中的被動實體,是受主體操縱的,包括文件、基本表、索引、視圖等對于主體和客體,DBMS為他們每個實例(值)指定一個敏感度標記。敏感度表被分為若干級別,如絕密、機密、可信、公開等。主體的敏感度標記稱為許可證級別,客體的敏感度標記稱為密級。強制存取方法當某一主體以某一許可證級別注冊入系統時,系統要求他對任何客體的存取必須遵循如下規則:僅當主體的許可證級別大于或等于客體的密級時,該主體才能讀取相應的客體;僅當主體的許可證級別等于客體的密級時,該主體才能寫相應的客體;審計和數據加密審計功能把用戶對數據庫的所有操作都自動記錄下來放入審計日志中。DBA可以利用審計跟蹤的信息,重現導致數據庫現有狀況的一系列事件,找出非法存取數據的人、時間和內容等。數據加密是防止數據庫中數據在存儲和傳輸中失密的有效手段。加密的基本思想是根據一定的算法將原始數據(明文)變換為不可識別的格式(密文),從而使得不知道解密算法的人無法獲知數據的內容。統計數據庫安全性統計數據庫中的數據分為兩類,一類是微數據描述現實世界的實體、概念或事件的數據;另一類是統計或綜合數據,時對微數據進行綜合處理而得到的結果數據。統計數據庫只為用戶提供統計數據,不允許用戶訪問微數據。但微數據有時可以通過一組統計數據推導出來。統計數據庫安全性的目的就是防止用戶訪問或推導出統計數據庫的微數據。統計數據庫安全性例:關系PERSON(NAME,SSN,INCOME,ADDRESS,CITY,STATE,ZIP,SEX,LAST_DEGREE)為人口統計數據庫中的一個關系。假設已知王蘭獲博士學位,居住在黑龍江省哈爾濱市,現要查詢其收入,首先執行:
SELECTCOUNT(*)FROMPERSONWHERELAST_DEGREE=‘PH.D’ANDSEX=‘F’ANDCITY=‘哈爾濱’
ANDSTATE=‘黑龍江’;統計數據庫安全性若返回結果為1,則在執行以下查詢:SELECTAVG(INCOME)FROMPERSONWHERELAST_DEGREE=‘PH.D’ANDSEX=‘F’ANDCITY=‘哈爾濱’ANDSTATE=‘黑龍江’;就可獲得王蘭的收入。統計數據庫安全性為防止用戶推導出統計數據庫的微數據,可以采取以下方法:對統計結果的大小加以控制,將其限制在某一范圍之內。這樣可以減小使用統計查詢推導微數據的可能性。禁止在相同元組集合上重復執行一系列統計查詢。在統計查詢結果中加入噪聲,為推導微數據制造困難。完整性數據庫的完整性是指數據的正確性和相容性。其中,正確性是指數據應具有合法的類型,如數值型的字段只能含有0~9,不能包含其它符號;更進一步,數據還應在有效的取值范圍之內,如一年最多只有12個月,不能出現13個月。相容性是指表示同一個事實的兩個數據應該相同,如一個人不應當存在兩個年齡。數據庫能否保持完整性關系到數據庫系統是否能夠真實的反映現實世界,因此維護數據庫的完整性十分重要。完整性與安全性數據庫的完整性與安全性是兩個不同的概念。前者是為了防止數據庫中存在不符合語義的數據,防止錯誤信息的輸入和輸出,即所謂的垃圾進垃圾出所造成的無效操作和錯誤結果。而后者是保護數據庫防止惡意的破壞和非法存取。也就是說,安全性防范的是非法用戶和非法操作,完整性措施的防范對象是不合語義的數據。完整性約束條件施加在數據庫數據之上的語義約束條件稱為數據庫完整性約束條件。數據庫系統依據完整性約束條件進行完整性檢查。完整性約束條件作用的對象可以是關系、元組、列三種。其中列約束主要是列的類型、取值范圍、精度等約束條件。元組的約束是元組中各個字段間聯系的約束。關系的約束是若干元組間、關系集合上以及關系之間的聯系的約束。完整性約束條件涉及這三類對象的完整性約束又可分為靜態約束和動態約束。靜態約束是指數據庫每一確定狀態(在某一時刻數據庫中的所有數據實例構成了數據庫的一個狀態)時,數據對象所應滿足的約束條件,它是反映數據庫狀態合理性的約束。動態約束是指數據庫從一個中狀態轉變為另一種狀態時,新、舊值之間所應滿足的約束條件,它是反映數據庫狀態變遷的約束。靜態約束固有約束指數據模型固有的約束,如關系的屬性應當是原子的。隱含約束指隱含于數據模式的約束,一般用DDL語句說明,并存于數據字典中。如實體完整性約束。顯式約束指固有約束,隱含約束之外,依賴于數據的語義和應用,需要顯式定義的完整性約束。靜態約束靜態列級約束是對一個列的取值域的說明,包括:對數據類型的約束(包括數據的類型、長度、單位、精度等)對數據格式的約束對取值范圍或取值集合的約束對空值的約束其他約束靜態約束靜態元組約束規定了組成一個元組的各個列之間的約束關系。靜態關系約束規定了一個關系的若干元組或者若干關系之間常常存在的各種聯系或約束。包括:實體完整性約束參照完整性約束函數依賴統計約束動態約束動態列級約束是修改列定義或列值時應滿足的約束條件,包括:修改列定義時的約束修改列值時的約束動態元組約束指修改元組值時元組中各個字段間需要滿足的約束。動態關系約束是加在關系變化前后狀態上的限制條件。數據庫的完整性控制機制為保護數據庫的完整性,防止錯誤的數據進入數據庫,數據庫提供了完整性控制機制。它包括三個方面的功能:定義功能,提供定義完整性約束條件的機制。檢查功能,檢查用戶發出的操作請求是否違背了完整性約束條件。違約響應,若違背了完整性約束條件,則采取一定措施來保證數據的完整性。完整性檢查的時機立即執行約束是指在執行用戶事務的過程中,在一條語句執行完后立即進行完整性約束的檢查。若違背了完整性約束,系統將拒絕該操作。延遲執行約束是指在整個用戶事務執行完畢后,再進行完整性約束的檢查,若正確方允許提交事務。若違背了完整性約束,系統將拒絕整個事務。完整性規則一條完整性規則可以用一個五元組(D,O,A,C,P)來描述,其中:D(Data)約束所作用的數據對象O(Operation)觸發完整性檢查的數據庫操作,即當用戶發出什么操作請求時需要檢查該完整性規則,是立即檢查還是延遲檢查。A(Assertion)數據對象必須滿足的斷言或語義約束。C(Condition)選擇A作用的數據對象值的謂詞。P(Procedure)違反完整性規則時觸發的過程。完整性規則教授的工資不得低于1000元。D約束作用的對象為工資Sal屬性O插入或修改職工元組時ASal不能小于1000C職稱=‘教授’P拒絕執行該操作完整性約束的說明固有約束在DBMS實現時已經考慮,不必特殊說明。隱含約束的說明可以通過DDL語句來定義實現。顯式完整性約束的說明一般有過程說明方式,斷言說明方式,觸發器說明方式等幾種。顯式完整性約束的說明用過程說明約束把約束的說明和檢驗作為一個過程,由程序員編碼到每個更新數據庫的事務中。用以檢驗數據庫更新是否違反了給定約
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 保溫材料原料工崗中未來趨勢考核試卷含答案
- 稀土后處理工安全知識評優考核試卷含答案
- 脂肪酸氨化操作工誠信道德評優考核試卷含答案
- 鍋爐設備檢修工崗位水平能力考核試卷含答案
- 冷藏工崗前基礎實戰考核試卷含答案
- 安全價值創造實踐講解
- 樂視人工智能手機評測
- 2026年建筑廢棄物資源化利用技術與政策支持研究
- 2026年12月私域社群年終團購收官轉化計劃
- (完整版)安全生產管理體系及保證措施
- 親子關系斷絕協議書范文模板
- XX集團公司匯率風險管理實施細則
- 2024-2025學年初中信息技術(信息科技)七年級下冊黔教版教學設計合集
- DB4201-T 704-2024 武漢市黨政機關物業管理服務規范
- JT-T-1284-2020低平板半掛車技術規范
- 《高效制冷機房系統應用技術規程》
- ISO TR 15608-2017-中英文版完整
- 法學概論(第七版) 課件全套 谷春德 第1-7章 我國社會主義法的基本理論 - 國際法
- (高清版)TDT 1013-2013 土地整治項目驗收規程
- 中國移動市場經營管理知識分析
- SSD基礎知識及一些技術解析
評論
0/150
提交評論