動(dòng)態(tài)數(shù)據(jù)脫敏技術(shù)分析
在當(dāng)前國(guó)內(nèi)信息安全熱潮中,數(shù)據(jù)脫敏作為數(shù)據(jù)安全的重要一環(huán)得到了業(yè)界的認(rèn)可與重視。早在2012年,數(shù)據(jù)脫敏首次作為一個(gè)單獨(dú)的魔力象限由Gartner發(fā)布,Gartner在2014年又提出了:按照數(shù)據(jù)使用場(chǎng)景,將數(shù)據(jù)脫敏分為靜態(tài)數(shù)據(jù)脫敏(Static data masking-SDM )與動(dòng)態(tài)數(shù)據(jù)脫敏(Dynamic data masking-DDM )。
可能有人望文生義,認(rèn)為動(dòng)態(tài)數(shù)據(jù)脫敏一定比靜態(tài)數(shù)據(jù)脫敏高級(jí)。非也非也,靜態(tài)or動(dòng)態(tài),取決于脫敏的使用場(chǎng)景,主要是以使用場(chǎng)景為由來(lái)選擇合適的數(shù)據(jù)脫敏的模式。
今天咱們就來(lái)理一理動(dòng)態(tài)數(shù)據(jù)脫敏和靜態(tài)數(shù)據(jù)脫敏之間的區(qū)別,著重和大家分析下動(dòng)態(tài)數(shù)據(jù)脫敏的原理、使用場(chǎng)景、部署方式等,一窺動(dòng)態(tài)數(shù)據(jù)脫敏如何在隱私數(shù)據(jù)安全保護(hù)中發(fā)揮至關(guān)重要的左右。
一、動(dòng)靜態(tài)數(shù)據(jù)脫敏“半斤八兩”
前面提到了,靜態(tài)數(shù)據(jù)脫敏與動(dòng)態(tài)數(shù)據(jù)脫敏是按脫敏數(shù)據(jù)的使用場(chǎng)景來(lái)區(qū)分的。所謂的數(shù)據(jù)使用環(huán)境,主要是指業(yè)務(wù)系統(tǒng)脫敏之后的數(shù)據(jù)在哪些環(huán)境中使用,一般可分為生產(chǎn)環(huán)境和非生產(chǎn)環(huán)境(開(kāi)發(fā)、測(cè)試、外包、數(shù)據(jù)分析等)。
- 靜態(tài)數(shù)據(jù)脫敏(SDM):一般用在非生產(chǎn)環(huán)境,將敏感數(shù)據(jù)從生產(chǎn)環(huán)境抽取并脫敏后給到非生產(chǎn)環(huán)境使用,常用于培訓(xùn)、分析、測(cè)試、開(kāi)發(fā)等非生產(chǎn)系統(tǒng)的數(shù)據(jù)庫(kù);
- 動(dòng)態(tài)數(shù)據(jù)脫敏(DDM):常用在生產(chǎn)環(huán)境,在訪(fǎng)問(wèn)敏感數(shù)據(jù)即時(shí)進(jìn)行脫敏,一般用來(lái)解決在生產(chǎn)環(huán)境需要根據(jù)不同情況對(duì)同一敏感數(shù)據(jù)讀取時(shí)進(jìn)行不同級(jí)別脫敏的場(chǎng)景。
二、動(dòng)態(tài)數(shù)據(jù)脫敏實(shí)現(xiàn)原理
動(dòng)態(tài)數(shù)據(jù)脫敏是在用戶(hù)層對(duì)數(shù)據(jù)進(jìn)行獨(dú)特屏蔽、加密、隱藏、審計(jì)或封鎖訪(fǎng)問(wèn)途徑的流程,當(dāng)應(yīng)用程序、維護(hù)、開(kāi)發(fā)工具請(qǐng)求通過(guò)動(dòng)態(tài)數(shù)據(jù)脫敏(DDM) 時(shí),實(shí)時(shí)篩選請(qǐng)求的SQL語(yǔ)句,依據(jù)用戶(hù)角色、權(quán)限和其他脫敏規(guī)則屏蔽敏感數(shù)據(jù),并且能運(yùn)用橫向或縱向的安全等級(jí),同時(shí)限制響應(yīng)一個(gè)查詢(xún)所返回的行數(shù)。
動(dòng)態(tài)數(shù)據(jù)脫敏(DDM)以這種方式確保業(yè)務(wù)人員、運(yùn)維人員以及外包開(kāi)發(fā)人員嚴(yán)格根據(jù)其工作所需和安全等級(jí)訪(fǎng)問(wèn)敏感數(shù)據(jù)。
三、動(dòng)態(tài)脫敏系統(tǒng)的使用場(chǎng)景
本文選取業(yè)務(wù)脫敏、運(yùn)維脫敏、數(shù)據(jù)交換脫敏三個(gè)使用場(chǎng)景分別展開(kāi)介紹。
1. 業(yè)務(wù)脫敏
動(dòng)態(tài)脫敏系統(tǒng)首先要解決的問(wèn)題是,業(yè)務(wù)系統(tǒng)的普通用戶(hù)訪(fǎng)問(wèn)應(yīng)用系統(tǒng)時(shí)對(duì)數(shù)據(jù)權(quán)限的控制。正常情況下,業(yè)務(wù)系統(tǒng)開(kāi)發(fā)時(shí)會(huì)依據(jù)用戶(hù)身份標(biāo)識(shí)進(jìn)行身份驗(yàn)證后,不同的用戶(hù)進(jìn)行限制數(shù)據(jù)的訪(fǎng)問(wèn)。
如業(yè)務(wù)用戶(hù)在訪(fǎng)問(wèn)某行數(shù)據(jù)時(shí),只需要查看客戶(hù)個(gè)人信息的姓名、電話(huà)等信息,而不需要查看身份證號(hào)或家庭住址,故對(duì)身份證或家庭住址的顯示信息實(shí)行*號(hào)或其他方式進(jìn)行脫敏處理。
對(duì)于遺留系統(tǒng)(舊系統(tǒng)無(wú)法再作升級(jí)改造)以及開(kāi)發(fā)時(shí)未考慮《網(wǎng)絡(luò)安全法》中要求的個(gè)人隱私保護(hù)問(wèn)題,如若重新更改代碼過(guò)于復(fù)雜,只能依賴(lài)于外部技術(shù)實(shí)現(xiàn)數(shù)據(jù)的隱私保護(hù),這個(gè)時(shí)候也需要使用動(dòng)態(tài)脫敏技術(shù)。
2. 運(yùn)維脫敏
在信息安全的職責(zé)分離中,針對(duì)數(shù)據(jù)有三類(lèi)人員:數(shù)據(jù)所有者、數(shù)據(jù)管理員、系統(tǒng)管理員。數(shù)據(jù)所有者是業(yè)務(wù)人員,而數(shù)據(jù)管理員(DBA)與系統(tǒng)管理員是運(yùn)維人員.。
動(dòng)態(tài)脫敏需求最為迫切需要的一個(gè)場(chǎng)景,就是針對(duì)數(shù)據(jù)庫(kù)的運(yùn)維人員。運(yùn)維人員擁有的是管理員帳號(hào)DBA賬號(hào),但業(yè)務(wù)系統(tǒng)的數(shù)據(jù)是屬于業(yè)務(wù)單位而不是運(yùn)維部門(mén)。從職責(zé)分離的原則上,如何實(shí)現(xiàn)既允許運(yùn)維人員訪(fǎng)問(wèn)業(yè)務(wù)生產(chǎn)數(shù)據(jù)庫(kù)又不能讓他們看到敏感數(shù)據(jù)?
以員工的工資表為例,當(dāng)數(shù)據(jù)庫(kù)的運(yùn)維人員使用高權(quán)限賬號(hào)查詢(xún)這類(lèi)敏感表時(shí),動(dòng)態(tài)脫敏系統(tǒng)將自動(dòng)將此敏感表(如工資表)的關(guān)鍵信息(工資)全部進(jìn)行脫敏處理后再進(jìn)行顯示,防止敏感信息泄露。
之前的技術(shù)手段是DAM技術(shù)方案,針對(duì)數(shù)據(jù)庫(kù)作訪(fǎng)問(wèn)審計(jì)管理,針對(duì)DBA登陸后的一切操作進(jìn)行記錄作為事后追溯。但這是一種被動(dòng)的(事后)檢測(cè)性能力,對(duì)于隱私保護(hù)同時(shí)還需要有預(yù)防性(事前)的技術(shù)能力。這種針對(duì)DBA維護(hù)時(shí)數(shù)據(jù)脫敏就是動(dòng)態(tài)脫敏中的運(yùn)維脫敏。
3. 數(shù)據(jù)交換脫敏
動(dòng)態(tài)脫敏還有一種不常見(jiàn)的使用場(chǎng)景:業(yè)務(wù)系統(tǒng)與業(yè)務(wù)系統(tǒng)之間的數(shù)據(jù)訪(fǎng)問(wèn)(稱(chēng)作數(shù)據(jù)交換更合適)。在滿(mǎn)足隱私保護(hù)時(shí)需要對(duì)交換的數(shù)據(jù)進(jìn)行脫敏處理,但又不像傳統(tǒng)的靜態(tài)脫敏一樣需導(dǎo)出數(shù)據(jù)脫敏后再移交,而是通過(guò)業(yè)務(wù)系統(tǒng)之間的接口直接調(diào)用。這就屬于應(yīng)用系統(tǒng)之間不落地的數(shù)據(jù)交換,針對(duì)這種交換的數(shù)據(jù)需要作脫敏處理。
四、動(dòng)態(tài)脫敏系統(tǒng)的部署方式
1. 代理網(wǎng)關(guān)式
動(dòng)態(tài)脫敏系統(tǒng)常見(jiàn)的一種部署模式,邏輯上是旁路,物理上是串行的方式。原本應(yīng)用系統(tǒng)與數(shù)據(jù)庫(kù)建立連接,為了實(shí)現(xiàn)數(shù)據(jù)脫敏處理,應(yīng)用系統(tǒng)的SQL數(shù)據(jù)連接請(qǐng)求轉(zhuǎn)發(fā)到脫敏代理系統(tǒng),由動(dòng)態(tài)脫敏系統(tǒng)解析請(qǐng)求后,再將SQL語(yǔ)句轉(zhuǎn)發(fā)到數(shù)據(jù)庫(kù)服務(wù)器,數(shù)據(jù)庫(kù)服務(wù)器返回的數(shù)據(jù)同樣經(jīng)過(guò)動(dòng)態(tài)脫敏系統(tǒng)后由脫敏系統(tǒng)返回給應(yīng)用服務(wù)器。
這種部署方式可以實(shí)現(xiàn),不在數(shù)據(jù)庫(kù)服務(wù)器與應(yīng)用務(wù)器上安裝軟件就能進(jìn)行脫敏處理,但這也需要更改應(yīng)用務(wù)器對(duì)數(shù)據(jù)庫(kù)的調(diào)用地址,也就是說(shuō)原來(lái)是由應(yīng)用務(wù)器連接數(shù)據(jù)庫(kù),現(xiàn)在改成應(yīng)用服務(wù)器連接動(dòng)態(tài)脫敏的代理網(wǎng)關(guān)。這種部署模式能針對(duì)應(yīng)用用戶(hù)實(shí)現(xiàn)粗粒度的脫敏,也可實(shí)現(xiàn)針對(duì)運(yùn)維脫敏的處理。存在的問(wèn)題是,針對(duì)應(yīng)用用戶(hù)無(wú)法實(shí)現(xiàn)用戶(hù)級(jí)的不同脫敏算法與效果,同時(shí)運(yùn)維脫敏也存在被繞過(guò)的危險(xiǎn),DBA可能會(huì)繞過(guò)動(dòng)態(tài)脫敏系統(tǒng)直接訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)地址。(國(guó)外Informatica 的產(chǎn)品就是常以這種方式部署)。
2. 透明網(wǎng)關(guān)式
這種部署模式是將動(dòng)態(tài)脫敏系統(tǒng)串接在應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)之間,由于動(dòng)態(tài)脫敏系統(tǒng)能在OSI二層上工作,不需要IP地址,對(duì)應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)服務(wù)器來(lái)說(shuō),都像原來(lái)一樣訪(fǎng)問(wèn)各自的真實(shí)IP地址,動(dòng)態(tài)脫敏系統(tǒng)通過(guò)協(xié)議解析分析出流量中的SQL語(yǔ)句來(lái)實(shí)現(xiàn)脫敏。這種部署方式不需要更改應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)服務(wù)器的連接設(shè)置,但在網(wǎng)絡(luò)中會(huì)形成單點(diǎn)故障,雖然常常有BYPASS技術(shù)作為支撐,但所有流量都會(huì)經(jīng)過(guò)網(wǎng)關(guān),會(huì)造成網(wǎng)關(guān)性能瓶頸問(wèn)題。(國(guó)外做數(shù)據(jù)庫(kù)防火墻的Imperva 等會(huì)采用這種方式,但動(dòng)態(tài)脫敏只是其中小的功能,也只是針對(duì)少量的敏感數(shù)據(jù)采用這種脫敏方式。)
3. 軟件Agent代理方式
這種方式在數(shù)據(jù)庫(kù)服務(wù)器上安裝Agent, 監(jiān)控對(duì)數(shù)據(jù)的訪(fǎng)問(wèn)請(qǐng)求。當(dāng)請(qǐng)求的數(shù)據(jù)是敏感數(shù)據(jù)時(shí),Agent 會(huì)利用脫敏算法來(lái)對(duì)數(shù)據(jù)進(jìn)行脫敏處理。這種部署方式需要在數(shù)據(jù)庫(kù)服務(wù)器上安裝軟件,帶來(lái)了好處是運(yùn)維人員無(wú)法繞過(guò)。
五、動(dòng)態(tài)脫敏在隱私保護(hù)與數(shù)據(jù)安全方案中作用
數(shù)據(jù)脫敏不只是一種新穎的數(shù)據(jù)操作,它已成為軟件生命周期和數(shù)據(jù)管理的核心內(nèi)容。其中,靜態(tài)數(shù)據(jù)脫敏技術(shù)已被納入集成到軟件生命周期(SLC),動(dòng)態(tài)數(shù)據(jù)脫敏技術(shù)則成為數(shù)據(jù)管理過(guò)程中不可缺少的組成部分。