日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

『数据库』无聊到爆炸的数据库文章--数据库的安全性

發布時間:2023/12/15 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 『数据库』无聊到爆炸的数据库文章--数据库的安全性 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

『數據庫』 樸實無華且枯燥的數據庫教程–入門必看!(不收藏,真的吃虧了)

文章目錄

    • 計算機安全性概述
    • 數據庫安全性控制
    • 視圖機制
    • 審計(Audit)
    • 數據加密
    • 統計數據庫安全性

問題的提出

  • 數據庫的一大特點是數據可以共享
  • 數據共享必然帶來數據庫的安全性問題
  • 數據庫系統中的數據共享不能是無條件的共享

計算機安全性概述

一、計算機安全性

計算機系統安全性
為計算機系統建立和采取的各種安全保護措施,以保護計算機系統中的硬件、軟件及數據,防止其因偶然或惡意的原因使系統遭到破壞,數據遭到更改或泄露等。

三類計算機系統安全性問題

  • 技術安全類
  • 管理安全類
  • 政策法律類

二、安全標準簡介
1. TCSEC/TDI標準的基本內容
從四個方面來描述安全性級別劃分的指標
?安全策略
?責任
?保證
?文檔

2.TCSEC/TDI安全級別劃分

? 按系統可靠或可信程度逐漸增高
? 各安全級別之間:偏序向下兼容

B2以上的系統:還處于理論研究階段

CC
? 提出國際公認的表述信息技術安全性的結構
? 把信息產品的安全要求分為:安全功能要求、安全保證要求

CC文本組成
? 簡介和一般模型
? 安全功能要求
? 安全保證要求

數據庫安全性控制

概述

1. 非法使用數據庫的情況
? 用戶編寫一段合法的程序繞過DBMS及其授權機制,通過操作系統直接存取、修改或備份數據庫中的數據;
? 直接或編寫應用程序執行非授權操作
? 通過多次合法查詢數據庫從中推導出一些保密數據
? 破壞安全性的行為可能是無意的,故意的,惡意的

2. 數據庫安全性控制的常用方法
? 用戶標識和鑒定
? 存取控制
? 視圖
? 審計
? 密碼存儲

一、用戶標識與鑒別
系統提供的最外層安全保護措施

基本方法
? 系統提供一定的方式讓用戶標識自己的名字或身份;
? 系統內部記錄著所有合法用戶的標識;
? 每次用戶要求進入系統時,由系統核對用戶提供的身份標識;
? 通過鑒定后才提供機器使用權。
? 用戶標識和鑒定可以重復多次

用戶標識自己的名字或身份

  • 用戶名/口令
    ? 簡單易行,容易被人竊取
  • 每個用戶預先約定好一個計算過程或者函數
    ? 系統提供一個隨機數
    ? 用戶根據自己預先約定的計算過程或者函數進行計算
    ? 系統根據用戶計算結果是否正確鑒定用戶身份
  • 二、 存取控制

    1. 存取控制機制組成
    ? 定義用戶權限
    ? 合法權限檢查

    2. 用戶權限定義和合法權限檢查機制一起組成了DBMS的安全子系統

    3.常用存取控制方法
    ? 自主存取控制(Discretionary Access Control ,簡稱DAC): C2級;靈活
    ? 強制存取控制(Mandatory Access Control,簡稱 MAC):B1級;嚴格

    4.自主存取控制方法

  • 同一用戶對于不同的數據對象有不同的存取權限
  • 不同的用戶對同一對象也有不同的權限
  • 用戶還可將其擁有的存取權限轉授給其他用戶
  • 5.強制存取控制方法

  • 每一個數據對象被標以一定的密級
  • 每一個用戶也被授予某一個級別的許可證
  • 對于任意一個對象,只有具有合法許可證的用戶才可以存取
  • 三、自主存取控制方法

  • 通過 SQL 的 GRANT 語句和 REVOKE 語句實現
  • 用戶權限組成
    ?數據對象
    ?操作類型
  • 定義用戶存取權限:定義用戶可以在哪些數據庫對象上進行哪些類型的操作
  • 定義存取權限稱為授權

  • 四、授權與回收
    1.GRANT
    1)一般格式:

    GRANT <權限>[,<權限>]... [ON <對象類型> <對象名>] TO <用戶>[,<用戶>]... [WITH GRANT OPTION];

    2)語義:
    將對指定操作對象的指定操作權限授予指定的用戶

    發出GRANT:
    ?DBA
    ?數據庫對象創建者(即屬主Owner)
    ?擁有該權限的用戶
    按受權限的用戶
    ?一個或多個具體用戶
    ?PUBLIC(全體用戶)
    WITH GRANT OPTION子句:
    ? 指定:可以再授予
    ? 沒有指定:不能傳播
    不允許循環授權

    2.REVOKE
    1)授予的權限可以由DBA或其他授權者用REVOKE語句收回
    2)REVOKE語句的一般格式為:

    REVOKE <權限>[,<權限>]... [ON <對象類型> <對象名>] FROM <用戶>[,<用戶>]...;

    SQL靈活的授權機制

  • DBA:擁有所有對象的所有權限
    ? 不同的權限授予不同的用戶
  • 用戶:擁有自己建立的對象的全部的操作權限
    ? GRANT:授予其他用戶
  • 被授權的用戶
    ? “繼續授權”許可:再授予
  • 所有授予出去的權力在必要時又都可用REVOKE語句收回
  • 3.創建數據庫模式的權限
    1)DBA在創建用戶時實現
    2)CREATE USER語句格式

    CREATE USER <username> [WITH][DBA | RESOURCE | CONNECT]

    五、數據庫角色

    被命名的一組與數據庫操作相關的權限
    ? 角色是權限的集合
    ? 可以為一組具有相同權限的用戶創建一個角色
    ? 簡化授權的過程

    1. 角色的創建

    CREATE ROLE <角色名>

    2. 給角色授權

    GRANT <權限>[,<權限>]… ON <對象類型>對象名 TO <角色>[,<角色>

    3.將一個角色授予其他的角色或用戶

    GRANT <角色1>[,<角色2>]… TO <角色3>[,<用戶1>]… [WITH ADMIN OPTION]

    4.角色權限的收回

    REVOKE <權限>[,<權限>]… ON <對象類型> <對象名> FROM <角色>[,<角色>]…

    六、強制存取控制方法
    自主存取控制缺點

  • 可能存在數據的“無意泄露”
  • 原因:這種機制僅僅通過對數據的存取權限來進行安全控制,而數據本身并無安全性標記
  • 解決:對系統控制下的所有主客體實施強制存取控制策略
  • 1. 強制存取控制(MAC)
    ? 保證更高程度的安全性
    ? 用戶不能直接感知或進行控制
    ? 適用于對數據有嚴格而固定密級分類的部門:軍事部門;政府部門

    2. 主體是系統中的活動實體
    ? DBMS所管理的實際用戶
    ? 代表用戶的各進程

    3. 客體是系統中的被動實體,是受主體操縱的
    ? 文件
    ? 基表
    ? 索引
    ? 視圖

    4. 敏感度標記(Label)
    ? 絕密(Top Secret)
    ? 機密(Secret)
    ? 可信(Confidential)
    ? 公開(Public)
    主體的敏感度標記稱為許可證級別(Clearance Level)
    客體的敏感度標記稱為密級(Classification Level)

    5.強制存取控制規則
    (1)僅當主體的許可證級別大于或等于客體的密級時,
    該主體才能讀取相應的客體
    (2)僅當主體的許可證級別等于客體的密級時,該主體
    才能寫相應的客體
    修正規則
    主體的許可證級別 <=客體的密級 → 主體能寫客體

    規則的共同點
    禁止了擁有高許可證級別的主體更新低密級的數據對象

    6.MAC與DAC
    1)DAC與MAC共同構成DBMS的安全機制
    2)實現MAC時要首先實現DAC
    ? 原因:較高安全性級別提供的安全保護要包含較低級別的所有保護

    DAC + MAC安全檢查示意圖

    視圖機制

  • 把要保密的數據對無權存取這些數據的用戶隱藏起來,對數據提供一定程度的安全保護
    ? 主要功能是提供數據獨立性,無法完全滿足要求
    ? 間接實現了支持存取謂詞的用戶權限定義
  • 審計(Audit)

    一、什么是審計
    ? 審計日志(Audit Log)
    將用戶對數據庫的所有操作記錄在上面
    ? DBA利用審計日志
    找出非法存取數據的人、時間和內容
    ? C2以上安全級別的DBMS必須具有

    二、審計分類
    1.用戶級審計
    ?針對自己創建的數據庫表或視圖進行審計
    ?記錄所有用戶對這些表或視圖的一切成功和(或)不成功的訪問要求以及各種類型的SQL操作
    2.系統級審計
    ?DBA設置
    ?監測成功或失敗的登錄要求
    ?監測GRANT和REVOKE操作以及其他數據庫級權限下的操作

    三、審計功能的可選性
    ? 審計很費時間和空間
    ? DBA可以根據應用對安全性的要求,靈活地打開或關閉審計功能。

    AUDIT語句:設置審計功能
    NOAUDIT語句:取消審計功能

    數據加密

    防止數據庫中數據在存儲和傳輸中失密的
    有效手段
    一、加密的基本思想
    ? 根據一定的算法將原始數據(術語為明文,Plain text)變換為不可直接識別的格式(術語為密文,Cipher text)
    ? 不知道解密算法的人無法獲知數據的內容

    二、加密方法
    1.替換方法
    ?使用密鑰(Encryption Key)將明文中的每一個字符轉換為密文中的一個字符
    2.置換方法
    將明文的字符按不同的順序重新排列
    3.混合方法
    美國1977年制定的官方加密標準:數據加密標準(Data Encryption Standard,簡稱DES)

    三、DBMS中的數據加密
    ? 有些數據庫產品提供了數據加密例行程序
    ? 有些數據庫產品本身未提供加密程序,但提供了
    接口

    數據加密功能通常也作為可選特征,允許用戶自由選擇
    ? 數據加密與解密是比較費時的操作
    ? 數據加密與解密程序會占用大量系統資源
    ? 應該只對高度機密的數據加密

    統計數據庫安全性

    一、統計數據庫的特點
    ? 允許用戶查詢聚集類型的信息(例如合計、平均
    值等)
    ? 不允許查詢單個記錄信息

    二、 統計數據庫中特殊的安全性問題
    ? 隱蔽的信息通道
    ? 從合法的查詢中推導出不合法的信息

    規則1:任何查詢至少要涉及N(N足夠大)個以上的記錄
    規則2:任意兩個查詢的相交數據項不能超過M個
    規則3:任一用戶的查詢次數不能超過1+(N-2)/M

    數據庫安全機制的設計目標:
    試圖破壞安全的人所花費的代價 >> 得到的利益

    寫在最后:
    本數據庫專欄是由愛吃老談酸菜的DV一同完成的,博客鏈接在主頁友鏈,是我的好哥們?
    Name:風骨散人,目前是一名雙非在校大學生,預計考研,熱愛編程,熱愛技術,喜歡分享,知識無界,希望我的分享可以幫到你!名字的含義:我想有一天我能有能力隨心所欲不逾矩,不總是向生活低頭,有能力讓家人擁有富足的生活而不是為了生計而到處奔波。“世人慌慌張張,不過是圖碎銀幾兩。偏偏這碎銀幾兩,能解世間惆悵,可讓父母安康,可護幼子成長 …”
    文章主要內容:
    Python,C++,C語言,JAVA,C#等語言的教程
    ACM題解、模板、算法等,主要是數據結構,數學和圖論
    設計模式,數據庫,計算機網絡,操作系統,計算機組成原理
    Python爬蟲、深度學習、機器學習
    計算機系408考研的所有專業課內容
    目前還在更新中,先關注不迷路。微信公眾號,cnblogs(博客園),CSDN同名“風骨散人”

    如果有什么想看的,可以私信我,如果在能力范圍內,我會發布相應的博文!
    感謝大家的閱讀!😘你的點贊、收藏、關注是對我最大的鼓勵!

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的『数据库』无聊到爆炸的数据库文章--数据库的安全性的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。