高清偷窥校园女浴室洗澡_old性欧美videos_我不卡影院秋霞理论片_将军不要啊h

GBase新聞

專注于數據庫軟件產品和服務,致力于成為用戶最信賴的數據庫產品供應商

GBase 8s是如何實現庫中數據安全保障的?

發布時間:2021-08-06

隨著計算機網絡的廣泛應用,網上信息的開放性與共享性日益增強,但隨之而來的是信息安全問題愈發嚴重。數據庫是這些數據信息存儲的主要場所,因此確保數據庫中存儲以及存取信息的安全是確保網絡安全的首要問題。為此,需要在通用的數據庫管理系統基礎上,圍繞安全性功能進行體系化設計,從而增強數據庫系統的安全性。

作為廣泛應用于金融、電信等超大規模領域的GBase 8s,是如何實現數據安全的呢?本篇文章將從“數據安全、安全功能組成”兩個方面為您揭開它的神秘面紗。


一、數據安全


· 數據保密性保護

存儲數據的保密性是安全數據庫的最重要的功能之一,GBase 安全數據庫的數據加密采用庫內加密的方式,在數據庫管理系統的內核存儲引擎級進行數據加解密處理,即數據在進行物理I/O時完成加/解密工作。

由于數據頁只有在真正進行I/O時才進行加解密操作,從而對于合法用戶來講是完全透明的,因此也可以稱為透明存儲加密。

GBase 8s存儲數據按頁進行加密,頁數據的完整性通過page trailer的校驗碼來保證。數據解密后,使用Page header的校驗碼對解密后的數據進行校驗,防止數據在加解密過程中被篡改。當用戶查詢數據時,系統將符合要求的數據解密后返回給用戶。


· 數據完整性保護

一個GBase 8s實例可以創建多個dbspace,一個dbspace可以包含多個物理chunk,一個chunk分成多個連續擴展區extent,一個表或者索引占用的空間被稱為一個tablespace,一個extent包含多個物理頁page。如下圖所示:

GBase8s存儲結構示意圖


其中,dbspace、tablespace和extent屬于邏輯存儲單元;chunk和page屬于物理存儲單元。

數據頁page是最基本的存儲單元,是最小的I/O單元,如下圖所示。GBase 8s進行一次I/O的最小單元是一個page,即使我們只對一個page里的某一行記錄進行了修改,GBase 8s也需要對整個數據頁進行讀取到內存和寫入磁盤的操作。磁盤的一個數據頁讀取到內存會分配一個同樣大小的內存page來存儲。GBase8s支持不同大小的數據頁:2KB、4KB、8KB、16KB。

一個數據頁的內部存儲結構如下圖所示,一個數據頁總體上分成三部分:頁頭、頁尾和數據部分。

GBase8s數據頁內部結構


頁頭中的chksum用于校驗該頁所存儲的數據,用于校驗數據的完整性。當write page時寫page 的校驗碼信息到chksum中,當read page時,首先重新計算該page的校驗碼信息,然后和chksum的校驗碼信息進行對比。如果不相等,說明此page的完整性信息被破壞了;如果相等,說明該頁的數據完整性得到了保證,可正常訪問。GBase 8s通過page 中保存校驗碼信息的方式來檢查以頁結構形式存儲在數據庫中的用戶數據是否出現完整性錯誤。

在數據庫服務的內部,用戶數據存在如下三種形態:密文磁盤、密文緩存、明文結果。當數據庫服務從磁盤文件中加載為緩存時,數據庫服務通過該數據頁chksum內存儲的校驗信息對該數據頁進行完整性校驗,當需要返回用戶明文結果集時,通過chksum內存儲的校驗信息對密文數據解密后的明文數據進行完整性校驗。防止用戶數據在加解密過程中遭到篡改。當數據庫服務收到用戶寫請求時,以上步驟反向執行。

GBase 8s安全數據庫在事務處理上通過采用成熟的主流技術來實現高效的事務處理,這些技術主要包括:鎖技術、多版本并行控制技術(multiversioning)。這些技術在保證事務ACID特征的前提下大大提高了事務的并發處理能力。

鎖是一種軟件機制,用于控制對數據庫中數據的訪問。在出現同時讀取和更新數據的多用戶環境中,鎖能夠確保每個事務的原子性、隔離性、一致性和持續性(ACID)不受到威脅,并且維護數據的完整性。

鎖的粒度越粗,它就能鎖住越多的數據庫對象。例如,對于能夠在一個磁盤頁上包含4 行的表,在該頁放置一個鎖,將鎖住其中包含的所有 4 個行;相反,如果使用行鎖,那么將僅鎖住一個行。因此,鎖的粒度越粗,并發性就越低,從而影響到性能,尤其在應用程序試圖訪問相同的行集時,不過,粗粒度也意味著在某些情況下鎖住相同數量的行需要的鎖數量更少。例如,鎖住整個表僅需要一個表鎖。


1、 鎖粒度

GBase 8s提供6種粒度的鎖:

圖三.png


2、 隔離級別

GBase 8s提供以下五個級別的并發性:

圖四.png

GBase 8s安全數據庫通過對死鎖監測,會自動檢測一個事務的死鎖并回滾一個或多個事務來防止死鎖,并設法提取小的事務來進行回滾,從而降低由于回滾造成的大量磁盤刷新以提高性能。


二、安全功能組成


· 用戶認證

DBMS的用戶認證分為用戶標識與身份鑒別。每個進入DBMS的用戶首先需要有一個用戶標識,并在DBMS的整個生命周期實現用戶標識的唯一性。用戶身份鑒別采用了用戶密碼及數據證書雙重認證的鑒別機制。


            · 用戶授權

每個授權用戶有一組數據庫安全域特性,可決定用戶下列安全域特性內容:可用特權和授權角色、可用存儲空間(如表空間)限額、可用系統資源限制等安全屬性。


· 訪問控制

1、 自主訪問控制

當一個主體訪問某個客體時,自主訪問控制根據訪問控制表檢查,以確認主體對客體的訪問操作是否合法。

2、 標記與強制訪問控制

DBMS中的主體與客體均需標以敏感標記(簡稱標記),標記分為安全等級標記與范疇標記,等級標記是用正整數表示,而范疇標記則用集合表示,由負責MAC管理的安全管理員設定主體和客體的密級和范疇。


 · 安全審計

GBase 8s提供了審計工具,它能定義有關的審計事件,記錄用戶的有關操作,并能記錄身份鑒別、自主訪問控制、標記、強制訪問控制中的有關審計數據,能進行相關的審計分析并自動報警,并能對審計數據進行查閱。


· 數據安全

1、 數據加密

GBase 8s安全數據庫采用國家密碼管理局審批的密碼卡加密,密碼支持包括密鑰生成、密鑰銷毀、密鑰運算。

2、 數據完整性

GBase 8s使用密碼卡硬件的雜湊算法實現數據庫用戶數據完整性保護功能。數據庫的數據是以數據頁的形式存儲在磁盤文件之中,每個數據頁都有chksum字段用來保護該數據頁的完整性,chksum校驗碼是通過密碼卡雜湊算法生成,數據庫在訪問數據頁時對每個數據頁的chksum校驗碼進行校驗,以保護該數據頁的完整性。


· 備份恢復

在發生故障后,GBase 8s可快速實現數據的備份。根據不同級別,GBase 8s可實現一下三個級別的備份:

1、 零級備份:全量備份

2、 一級備份:最近一次零級備份后的增量部分備份

3、 二級備份:最近一次一級備份后的增量部分備份


· 角色管理

GBase 8s安全數據管理系統分權的基本安全思想是最小特權的授權原則,對一個主體(用戶)僅賦予完成預定任務所必需的最小權限。基于該安全策略,把數據庫管理系統的用戶由原來單一的超級數據庫管理員變成現在的三類角色:安全管理員、審計管理員、數據管理員。它們分別承擔著不同的職責,并且期望它們三者之一應不能涉及其他兩者的權力范圍,從而實現整個數據庫系統的分權管理,即所謂的三權分立原則。

圖片5.png


· 限制

資源管理主要包括對用戶連接數量控制、服務器存儲空間監控預警、數據空間占用監控等功能。


· 通訊安全

用戶端與數據庫服務端的信息訪問,使用以SSL為基礎的安全協議來建立安全保密數據傳輸路徑。使用加密算法保護鏈路層安全,使用證書對服務端和客戶端進行雙向驗證,保證客戶端和服務端之間通訊的保密性和完整性。


· 可信路徑

GBase 8s的可信路徑由兩部分組成:系統管理用戶的安全態下的初始化過程和數據庫正常服務時管理員同服務端的安全通道。

 

通過“數據安全、安全功能組成”兩個方面的加強,GBase 8s構建了強大的安全機制,有效地保障了庫中的數據信息安全,為我國金融、電信等行業的數據信息安全提供中國力量!