一、數據庫安全性概述
1、數據庫安全性就是指保護數據庫以防止不合法使用所造成的數據泄露、更改或者破壞。
2、數據庫不安全因素:
· 計算機系統(tǒng)安全性
· 非授權用戶對數據庫的惡意存取和破壞
· 數據庫中重要或敏感的數據被泄露
· 安全環(huán)境的脆弱性
3、數據庫安全標準
國際信息安全等級標準1:TCSEC標準。其中D為無保護級,C為自主保護級,B為強制保護級,A為驗證保護級。7個安全級別。文章來源地址http://www.zghlxwxcb.cn/news/detail-769179.html
·?國際信息安全等級標準2:通用準則CC,安全功能要求和安全保證要求 ,11個安全功能類。
cc評估保證級劃分
·?中國的信息安全標準:我國的信息安全標準由以下系列:?GB/T 15843.x --y(x表示部分系數,y表示年份) ,GB 15851--1995 ,GB 15852—1995
4、安全數據庫:在具有關系型數據庫一般功能的基礎上,提高數據庫安全性,達到美國TCSEC/TDI的B1(安全標記保護)級標準,或中國國家標準《計算機信息系統(tǒng)安全保護等級劃分準則》的第三級(安全標記保護級)以上安全標準的數據庫管理系統(tǒng)。
5、計算機系統(tǒng)安全模型
· 用戶標識鑒定用戶身份,合法用戶準許進入系統(tǒng)
· 數據庫管理系統(tǒng)還要進行存取控制,只允許用戶執(zhí)行合法操作
· 操作系統(tǒng)有自己的保護措施
· 數據以密文形式存儲到數據庫中
二、KES-V8V6安全特性
1、身份鑒別:是系統(tǒng)提供的最外層安全保護措施。每個用戶在系統(tǒng)中都有一個用戶標識。每個用戶標識由用戶名和用戶標識號(口令或者說密碼或UID)兩部分組成,用戶標識號在系統(tǒng)的整個生命周期內是唯一的。系統(tǒng)內部記錄著所有合法用戶的標識,系統(tǒng)鑒別是指由系統(tǒng)提供一定的方式讓用戶標識自己的名稱或身份。每次用戶要求進入系統(tǒng)時,由系統(tǒng)進行核對,通過鑒定后才提供使用數據庫管理系統(tǒng)的權限。而對于用戶身份的鑒定方法有很多種,而在一個系統(tǒng)中往往多種方法的結合,從而獲得更強的安全性。具體方法如下:
· 靜態(tài)口令鑒別(登錄密碼)
· 動態(tài)口令(手機驗證碼)
· 生物特征驗證(指紋、眼膜)
· 智能卡鑒別(工牌)
·?密碼復雜度檢查?:數據庫安全員對口令的最小長度,所包含的數字、英文字母、特殊符號的數目進行設置后,在創(chuàng)建和修改用戶時,自動對口令進行相關方面的檢查。
o 功能打開:
o?在kingbase.conf的shared_preload_libraries 中增加passwordcheck ,重啟數據庫
§ system創(chuàng)建extension:create extension passwordcheck;
§ system打開功能:
§ alter system set passwordcheck.enable=on;
§ select sys_reload_conf();
o 參數:
§ passwordcheck.password_length :口令最小長度,取值范圍[8,63],默認值8
§ passwordcheck.password_condition_digit:口令至少包含幾個數字,取值范圍[2,61],默認值2
§ passwordcheck.password_condition_letter:口令至少包含幾個字母,取值范圍[2,61],默認值2
§ passwordcheck.password_condition_punct:口令至少包含幾個特殊字符,取值范圍[0,59],默認值0,其中特殊符號為除空白符、英文字母、單引號和數字外的所有可見字符
o 功能關閉:
§ Alter system set passwordcheck.enable=off;
§ Select sys_reload_conf();
·?密碼有效期?:KES 的用戶管理中含有口令有效期這一屬性,用戶密碼過期檢查就是通過設置用戶密碼的有效期,在用戶密碼過期后限制用戶登錄數據庫,并輸入新密碼的功能。
o 功能打開:
§?在kingbase.conf的shared_preload_libraries 中增加identity_pwdexp ,重啟數據庫
§ system創(chuàng)建extension:create extension identity_pwdexp;
o 參數:
§ identity_pwdexp.password_change_interval :密碼有效期,單位是天,取值范圍[0,INT_MAX],默認值7,0是關閉該功能無限制
§ identity_pwdexp.max_password_change_interval :最大密碼有效期,單位是天,取值范圍[1,INT_MAX],默認值30,此參數用于限制密碼有效期的設置范圍,當設置的密碼有效期大于最大密碼有效期時,系統(tǒng)會報錯提示。
o 功能關閉
§ Alter system set identity_pwdexp.password_change_interval =0;
§ Select sys_reload_conf();
·?用戶登錄
o 帳戶異常登錄鎖定:指如果用戶連續(xù)若干次不能正確的登錄數據庫,那么這個用戶的帳戶將被系統(tǒng)禁用。
o?用戶登錄信息顯示?:會在用戶登錄數據庫時給出用戶一些提示信息,如此次登錄信息、最后一次成功登錄信息、此次登錄與上次登錄之間登錄失敗的次數、最近一次嘗試登錄的信息等。
o 功能打開:
§?在kingbase.conf的shared_preload_libraries 中增加sys_audlog ,重啟數據庫
§ system創(chuàng)建extension:create extension sys_audlog;
o 參數
§ sys_audlog.user_logonlog_level
§ sys_audlog.error_user_connect_times:允許用戶連續(xù)登錄失敗的最大次數
§ sys_audlog.error_user_connect_interval::用戶被鎖定時間,
§ sys_audlog.max_error_user_connect_times:用戶登錄失敗次數的最大值界限,
§ sys_audlog.error_user_connect_times:用戶被鎖定時間的最大值,取值范圍[0,INT_MAX],默認值2147483647
o 關閉:
§ Alter system set sys_audlog.user_logonlog_level =0;
§ Alter system set sys_audlog.error_user_connect_times =0;
§ Select sys_reload_conf();
o?查詢登錄信息:?System通過系統(tǒng)表sys_audit_userlog,查看所有用戶的登錄信息 ,普通用戶通過視圖SYS_AUDLOG.sys_user_audit_userlog查看本用戶的登錄信息
o?查詢用戶被封鎖信息:?通過系統(tǒng)表sys_audit_blocklog,查看被封鎖用戶的信息
·?密碼歷史管理:口令的歷史檢查是由數據庫管理員對初次設定的口令或更改過的口令使用天數進行設置后,在修改用戶口令時,自動對口令已使用天數進行相關方面的檢查。
2、用戶管理:
·?三權分立:支持將管理特權三權分立為三個管理員,并在初始化的時候創(chuàng)建數據庫管理員、安全管理員和審計管理員。解決數據庫超級用戶權力過度集中的問題
o a. 系統(tǒng)管理員(SYSTEM) :主要負責執(zhí)行數據庫日常管理的各種操作和自主存取控制。
o b. 安全管理員(SSO) :主要負責強制訪問規(guī)則的制定和管理,監(jiān)督審計管理員和普通用戶的操作,不能創(chuàng)建和操作普通對象。
o c. 審計管理員(SAO) :主要負責數據庫的審計,監(jiān)督系統(tǒng)管理員和安全管理員的操作,不能創(chuàng)建和操作普通對象。
o 功能打開
§?在kingbase.conf的shared_preload_libraries 中增加sepapower,重啟數據庫
§ system創(chuàng)建extension:create extension sepapower;
o 參數
§ Sepapower.separate_power_grant :表示可控制DCL語句(grant/revoke)是否由sso執(zhí)行;true是sso執(zhí)行,false是system執(zhí)行,默認是false。
o 關閉
§ drop extension sepapower;
§ shared_preload_libraries 中刪除sepapower,重啟數據庫
· SSO修改用戶屬性
3、數據訪問控制
·?自主訪問控制(DAC):是對主體(如用戶)操作客體(如表)進行授權管理,簡記為DAC。DAC 主要包括權限授予,回收及傳播。
o?通過?SQL 的GRANT 語句和REVOKE 語句實現(xiàn)(參考手冊SQL語句參考手冊.pdf)
o 定義用戶訪問權限:定義用戶可以在哪些數據庫對象上進行的操作
·?強制訪問控制(MAC)?:KES 支持標記和強制訪問控制,保護用戶數據,防止非法竊取。 強制訪問控制(MAC)與DAC 相比,MAC 提供更嚴格和靈活的控制方式。MAC 首先為所控制的主體和客體指派安全標記,然后依據這些標記進行訪問仲裁。并且,只有主體標記能支配客體標記時才允許主體訪問。
o 在強制訪問控制中,數據庫管理系統(tǒng)所管理的全部實體被分為主體和客體兩大類
§ · 主體是系統(tǒng)中的活動實體,即:數據庫管理系統(tǒng)所管理的實際用戶
§ · 客體是系統(tǒng)中的被動實體,即:文件、基表、索引、視圖
o?強制訪問控制規(guī)則遵循簡單保密模型,即” 向下讀,區(qū)間寫” 模型
4、數據訪問保護
·?數據頁面一致性保護?:數據頁面包括CRC 校驗碼,在讀數據時,首先完成一致性校驗。若發(fā)現(xiàn)問題,及時報錯,阻止錯誤蔓延,阻止錯誤升級。
· 數據加密,加密函數
5、數據安全傳輸-SSL
· KingbaseES支持通過SSL協(xié)議實現(xiàn)客戶端和服務器之間的安全數據傳輸,使得數據在傳輸過程中難以被**、篡改、重放和偽造。
·?安全套接字(SSL,Secure Sockets Layer 安全套接層),為網絡傳輸中的數據提供加密,并驗證web服務器。SSL介于應用層和傳輸層之間,應用層將數據傳遞給SSL層,SSL對數據進行加密,并增加自己的SSL頭。
6、存儲加密
· KES-V8V6引入了加密框架,對用戶提供的數據加密保護機制,保護存儲在磁盤中的數據不被非法竊取。
·?算法:內置SM4 和RC4 算法對數據進行加密。
· 密鑰:采用三級密鑰結構,分別為主密鑰和對象密鑰和塊級密鑰。
·?錢包管理:使用錢包時,需要先通過錢包密碼驗證。創(chuàng)建加密對象時,錢包必須處于OPEN狀態(tài);修改錢包密碼時,錢包必須處于CLOSE狀態(tài)。
· 透明存儲加密:指數據寫到磁盤上時對其進行加密,用戶重新讀取時,進行解密。
7、數據庫審計
· 將數據庫中發(fā)生的事件記錄下來,以供日后審計員分析和統(tǒng)計。
·?設置專門的管理員(審計員/安全員),設置審計規(guī)則和查看審計記錄,符合最新標準要求。
· 支持審計日志加密存儲、日志將滿時自動轉儲、手動轉儲。
· 支持審計日志本地存儲和遠程存儲。
· 支持審計入侵檢測。
8、其他
·?備份恢復權限:SYSBACKUP,允許物理備份sys_basebackup 連接到目標數據庫,執(zhí)行物理備份操作。
·?客體重用:通過在KingbaseES 資源申請和釋放(注:釋放是KingbaseES 對象做判斷認為可以重用對象的資源或者是可以向操作系統(tǒng)返回對象占用的資源)的地方清除介質上的殘留信息,以達到客體重用的要求。
·?系統(tǒng)Any權限:通過授予用戶ANY 權限,允許用戶操作所有的某種類型的數據庫對象的某種操作,不包括系統(tǒng)對象。
三、V8V6安全分析工具
抓包工具的目的:抓取信息,判斷信息是否被加密
1、Tcpdump抓包工具
2、Wireshark抓包工具
3、Hexdump二進制文件查看工具
4、BenchmarkSQL工具
文章來源:http://www.zghlxwxcb.cn/news/detail-769179.html
到了這里,關于人大金倉數據庫KingbaseES安全概述的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!