一種基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法
0 引言
隨著信息技術(shù)的高速發(fā)展,各類計(jì)算機(jī)應(yīng)用系統(tǒng)活躍在各個(gè)行業(yè)的不同領(lǐng)域。盡管各類系統(tǒng)實(shí)現(xiàn)的功能各不相同,但無(wú)論是部署于大型企業(yè)和商業(yè)組織的企業(yè)級(jí)應(yīng)用,還是開發(fā)者出于興趣編寫的個(gè)人應(yīng)用,數(shù)據(jù)庫(kù)系統(tǒng)是所有應(yīng)用系統(tǒng)數(shù)據(jù)存儲(chǔ)和管理的核心,存儲(chǔ)著整個(gè)應(yīng)用系統(tǒng)中最重要的數(shù)據(jù)。然而,數(shù)據(jù)庫(kù)系統(tǒng)往往面臨許多的安全威脅,不僅外部攻擊者會(huì)攻擊應(yīng)用系統(tǒng)所在服務(wù)器,一些擁有特權(quán)的內(nèi)部人員也有可能從內(nèi)部對(duì)應(yīng)用系統(tǒng)進(jìn)行破壞,采用實(shí)時(shí)審計(jì)技術(shù)來(lái)對(duì)數(shù)據(jù)庫(kù)用戶操作進(jìn)行快速準(zhǔn)確的權(quán)限審計(jì),能夠有效防范內(nèi)部管理人員的越權(quán)操作。
目前,在數(shù)據(jù)庫(kù)系統(tǒng)領(lǐng)域,現(xiàn)有的成熟商用數(shù)據(jù)庫(kù)系統(tǒng)包括Oracle、Microsoft SQL Server、DB2等,它們都有各自的高效安全的審計(jì)系統(tǒng),但這類審計(jì)方案往往應(yīng)用于國(guó)外廠商的數(shù)據(jù)庫(kù)管理系統(tǒng)中。而在國(guó)內(nèi),在很多高機(jī)密級(jí)別的應(yīng)用場(chǎng)景中,出于對(duì)高安全性要求的考慮,無(wú)法直接使用國(guó)外廠商提供的技術(shù)解決方案,因此在國(guó)產(chǎn)自主研發(fā)的數(shù)據(jù)庫(kù)系統(tǒng)中研究并部署數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)則成為亟待解決的問(wèn)題。國(guó)網(wǎng)數(shù)據(jù)庫(kù)管理軟件SG-RDB是基于開源數(shù)據(jù)庫(kù)PostgreSQL內(nèi)核系統(tǒng)進(jìn)行的二次開發(fā)和封裝,SG-RDB具備關(guān)系型數(shù)據(jù)庫(kù)的基本功能,通過(guò)數(shù)據(jù)庫(kù)安全標(biāo)記和三權(quán)分立實(shí)現(xiàn)了強(qiáng)制訪問(wèn)控制,并開發(fā)定制了一系列異構(gòu)數(shù)據(jù)庫(kù)接口和主從讀寫分離等高可用集群功能。但SG-RDB在數(shù)據(jù)庫(kù)審計(jì)方面依舊存在PostgreSQL本身數(shù)據(jù)庫(kù)審計(jì)功能不足的問(wèn)題,基于國(guó)產(chǎn)數(shù)據(jù)庫(kù)SG-RDB進(jìn)行安全數(shù)據(jù)審計(jì)方案的研究與開發(fā),成為亟待解決的課題。
審計(jì)功能主要是為了確認(rèn)數(shù)據(jù)庫(kù)系統(tǒng)中用戶對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問(wèn)時(shí)所遵守的訪問(wèn)策略的合法性[1]。如果只是對(duì)用戶操作結(jié)果進(jìn)行審計(jì),往往會(huì)有許多不足之處,一方面用戶可能通過(guò)多次合法操作來(lái)實(shí)現(xiàn)不合法的目的,另一方面過(guò)于細(xì)粒度的審計(jì)往往也會(huì)帶來(lái)效率的降低。目前存在很多種針對(duì)數(shù)據(jù)庫(kù)的審計(jì)方式,如基于推理的審計(jì)[2]、基于網(wǎng)絡(luò)偵聽的審計(jì)[3-4]、面向數(shù)據(jù)操作的審計(jì)[5-9]、基于日志的審計(jì)等[10]。在基于網(wǎng)絡(luò)偵聽的審計(jì)方式中,審計(jì)系統(tǒng)會(huì)捕獲、過(guò)濾、分析數(shù)據(jù)庫(kù)系統(tǒng)中服務(wù)器和客戶端通信的數(shù)據(jù),根據(jù)分析結(jié)果按照策略分類進(jìn)行審計(jì)操作。這類審計(jì)操作對(duì)于數(shù)據(jù)包的分析方式有較高要求,同時(shí)這類系統(tǒng)不利于推廣,解析和審計(jì)策略必須針對(duì)不同的數(shù)據(jù)庫(kù)進(jìn)行調(diào)整[11-12],不易針對(duì)用戶的詳細(xì)操作進(jìn)行審計(jì)。在面向數(shù)據(jù)操作的審計(jì)操作中,審計(jì)系統(tǒng)會(huì)通過(guò)觸發(fā)器在發(fā)生數(shù)據(jù)操作時(shí)檢查數(shù)據(jù)操作語(yǔ)句是否擁有操作數(shù)據(jù)的權(quán)限,或某些操作是否處理了特定數(shù)據(jù),這類審計(jì)直接基于常規(guī)的數(shù)據(jù)操作[13],審計(jì)粒度較小,但是這類審計(jì)操作往往只能針對(duì)操作進(jìn)行審計(jì),如果多個(gè)用戶通過(guò)共謀或者單用戶通過(guò)多次查詢往往會(huì)造成數(shù)據(jù)信息的泄露[14-15]。基于日志的審計(jì)只能在事后追溯時(shí)對(duì)數(shù)據(jù)庫(kù)操作及處理結(jié)果進(jìn)行審計(jì),審計(jì)操作只能在事后對(duì)系統(tǒng)中的非法操作進(jìn)行跟蹤定位,難以滿足高效準(zhǔn)確的實(shí)時(shí)審計(jì)需求。
比較以上兩類審計(jì)操作可以發(fā)現(xiàn),傳統(tǒng)的數(shù)據(jù)庫(kù)審計(jì)系統(tǒng)雖然能夠較好地實(shí)現(xiàn)數(shù)據(jù)庫(kù)審計(jì)功能,但在安全性方面的犧牲較大,一方面為了實(shí)現(xiàn)較為高效的審計(jì)操作,某些審計(jì)系統(tǒng)不得不犧牲針對(duì)系統(tǒng)用戶的身份審計(jì)等能夠提高安全保障的審計(jì)操作;另一方面,為了實(shí)現(xiàn)細(xì)粒度的審計(jì)操作,審計(jì)系統(tǒng)在性能上不得不犧牲較多資源來(lái)針對(duì)數(shù)據(jù)操作觸發(fā)審計(jì)操作。為了解決以上兩方面問(wèn)題,本文提出了一種基于訪問(wèn)標(biāo)記的方法,可實(shí)現(xiàn)權(quán)限控制和系統(tǒng)開銷的平衡,提供高效和安全的細(xì)粒度權(quán)限實(shí)時(shí)審計(jì)功能。
1 系統(tǒng)及安全模型
1.1 系統(tǒng)模型
本文提出了一種基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法,設(shè)計(jì)了一種數(shù)據(jù)庫(kù)實(shí)時(shí)審計(jì)模型,該模型設(shè)置了2種訪問(wèn)標(biāo)記方法以及對(duì)應(yīng)的權(quán)限審計(jì)流程。基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法原理如
為簡(jiǎn)化說(shuō)明,以
此后用戶發(fā)送數(shù)據(jù)操作請(qǐng)求時(shí),都將經(jīng)過(guò)權(quán)限審計(jì)環(huán)節(jié),根據(jù)用戶所屬角色的操作授權(quán)與用戶實(shí)際操作請(qǐng)求進(jìn)行權(quán)限審計(jì),若用戶擁有高安全級(jí)別數(shù)據(jù)的操作授權(quán),則審計(jì)系統(tǒng)通過(guò)用戶提交的訪問(wèn)憑證獲得用戶的操作授權(quán),將用戶實(shí)際的操作請(qǐng)求與訪問(wèn)憑證的授權(quán)進(jìn)行比較,從而完成權(quán)限審計(jì)。
系統(tǒng)模型中的應(yīng)用簽名和用戶密鑰由系統(tǒng)與用戶共同維護(hù),用戶可以擁有多個(gè)應(yīng)用簽名,并為每個(gè)簽名申請(qǐng)所需權(quán)限,由審計(jì)管理員進(jìn)行審批和授權(quán),應(yīng)用簽名的權(quán)限矩陣通過(guò)線性數(shù)組進(jìn)行存儲(chǔ)。
1.2 主要問(wèn)題
在本文審計(jì)方法設(shè)計(jì)中,需要考慮以下幾個(gè)問(wèn)題,這些問(wèn)題是目前數(shù)據(jù)庫(kù)審計(jì)方案必須權(quán)衡的。
1)用戶權(quán)限過(guò)大。基于角色的權(quán)限標(biāo)記方法會(huì)綜合考慮所有用戶的應(yīng)用需求,同時(shí)用戶與角色存在多對(duì)一的關(guān)聯(lián)關(guān)系,因此可能造成用戶獲得過(guò)多非必要的操作權(quán)限。在本文的審計(jì)模型中,由于隔離了高安全級(jí)別的數(shù)據(jù),同時(shí)結(jié)合審計(jì)日志的操作記錄,因此普通授權(quán)的用戶不會(huì)造成系統(tǒng)損失。
2)系統(tǒng)開銷。基于訪問(wèn)憑證的權(quán)限標(biāo)記方法由于進(jìn)行了細(xì)粒度的權(quán)限設(shè)置,因此可能存在較大的系統(tǒng)開銷。在本文的審計(jì)模型中,對(duì)高安全級(jí)別的數(shù)據(jù)進(jìn)行了程度較高的細(xì)粒度權(quán)限劃分,用戶只能獲得非常少的操作權(quán)限,并通過(guò)訪問(wèn)憑證申請(qǐng)接口提前進(jìn)行權(quán)限檢測(cè),并存儲(chǔ)用戶獲得的操作授權(quán),在實(shí)際的權(quán)限審計(jì)過(guò)程中,只需根據(jù)訪問(wèn)憑證即可獲得用戶的操作授權(quán),直接與用戶實(shí)際操作進(jìn)行檢驗(yàn)即可完成權(quán)限審計(jì),大大降低了權(quán)限審計(jì)帶來(lái)的系統(tǒng)開銷。
3)內(nèi)部操作審計(jì)。審計(jì)系統(tǒng)管理員通過(guò)系統(tǒng)內(nèi)部通道獲得數(shù)據(jù)的操作權(quán)限,并且操作不受監(jiān)控。在本文的審計(jì)模型中,只存在一個(gè)超級(jí)管理員賬戶,審計(jì)管理員也要獲得用戶角色的授權(quán)才能進(jìn)行相關(guān)操作,因此內(nèi)部管理員的操作也在審計(jì)范圍內(nèi)。
2 基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)
2.1 整體描述
基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法原理描述中涉及的變量定義見(jiàn)
針對(duì)上文討論的內(nèi)容,本文提出了基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法,基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法原理如
在初始化階段,用戶與數(shù)據(jù)庫(kù)建立連接,系統(tǒng)為每個(gè)用戶建立Session會(huì)話,并通過(guò)用戶的角色標(biāo)記,提取用戶的授權(quán)矩陣,授權(quán)矩陣包括可操作類型矩陣
2.2 一種基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)
本節(jié)對(duì)基于訪問(wèn)標(biāo)記的安全數(shù)據(jù)庫(kù)審計(jì)方法的原理進(jìn)行詳細(xì)介紹,依據(jù)訪問(wèn)標(biāo)記的生命周期依次進(jìn)行原理闡述,具體分為訪問(wèn)標(biāo)記的初始化階段、訪問(wèn)憑證的申請(qǐng)階段、操作請(qǐng)求的解析階段和權(quán)限審計(jì)階段。
2.2.1 訪問(wèn)標(biāo)記初始化階段
1)角色標(biāo)記初始化。根據(jù)用戶實(shí)際需求、數(shù)據(jù)安全級(jí)別和系
責(zé)任編輯:售電衡衡
-
權(quán)威發(fā)布 | 新能源汽車產(chǎn)業(yè)頂層設(shè)計(jì)落地:鼓勵(lì)“光儲(chǔ)充放”,有序推進(jìn)氫燃料供給體系建設(shè)
2020-11-03新能源,汽車,產(chǎn)業(yè),設(shè)計(jì) -
中國(guó)自主研制的“人造太陽(yáng)”重力支撐設(shè)備正式啟運(yùn)
2020-09-14核聚變,ITER,核電 -
探索 | 既耗能又可供能的數(shù)據(jù)中心 打造融合型綜合能源系統(tǒng)
2020-06-16綜合能源服務(wù),新能源消納,能源互聯(lián)網(wǎng)
-
新基建助推 數(shù)據(jù)中心建設(shè)將迎爆發(fā)期
2020-06-16數(shù)據(jù)中心,能源互聯(lián)網(wǎng),電力新基建 -
泛在電力物聯(lián)網(wǎng)建設(shè)下看電網(wǎng)企業(yè)數(shù)據(jù)變現(xiàn)之路
2019-11-12泛在電力物聯(lián)網(wǎng) -
泛在電力物聯(lián)網(wǎng)建設(shè)典型實(shí)踐案例
2019-10-15泛在電力物聯(lián)網(wǎng)案例
-
新基建之充電樁“火”了 想進(jìn)這個(gè)行業(yè)要“心里有底”
2020-06-16充電樁,充電基礎(chǔ)設(shè)施,電力新基建 -
燃料電池汽車駛?cè)雽こ0傩占疫€要多久?
-
備戰(zhàn)全面電動(dòng)化 多部委及央企“定調(diào)”充電樁配套節(jié)奏
-
權(quán)威發(fā)布 | 新能源汽車產(chǎn)業(yè)頂層設(shè)計(jì)落地:鼓勵(lì)“光儲(chǔ)充放”,有序推進(jìn)氫燃料供給體系建設(shè)
2020-11-03新能源,汽車,產(chǎn)業(yè),設(shè)計(jì) -
中國(guó)自主研制的“人造太陽(yáng)”重力支撐設(shè)備正式啟運(yùn)
2020-09-14核聚變,ITER,核電 -
能源革命和電改政策紅利將長(zhǎng)期助力儲(chǔ)能行業(yè)發(fā)展
-
探索 | 既耗能又可供能的數(shù)據(jù)中心 打造融合型綜合能源系統(tǒng)
2020-06-16綜合能源服務(wù),新能源消納,能源互聯(lián)網(wǎng) -
5G新基建助力智能電網(wǎng)發(fā)展
2020-06-125G,智能電網(wǎng),配電網(wǎng) -
從智能電網(wǎng)到智能城市
-
山西省首座電力與通信共享電力鐵塔試點(diǎn)成功
-
中國(guó)電建公司公共資源交易服務(wù)平臺(tái)摘得電力創(chuàng)新大獎(jiǎng)
-
電力系統(tǒng)對(duì)UPS的技術(shù)要求