資料倉庫資料混淆
一、什麼是資料混淆?
在技術領域,資料混淆(也成為資料掩蔽)是將測試或開發環境中現有的敏感資訊替換為看起來像真實生產資訊的資訊,但這些資訊無法被任何人濫用。換句話說,測試或開發環境的使用者不需要看到真實生產資料,只要這些資料與真實資料相似即可。因此,資料混淆計劃被用於保護資料,它可幫助掩蔽非生產環境中包含的敏感資訊,讓企業可緩解資料洩露的風險。資料混淆也是資料倉庫體系釐裡面一個重要的組成部分。
二、對資料混淆技術的需求
企業通常需要將生產資料庫中儲存的生產資料複製到非生產或測試資料庫,這樣做是為了真實地完成應用功能測試以及涵蓋實時場景或最大限度減少生產漏洞或缺陷。這種做法的影響是,非生產環境很容易成為網路罪犯或惡意內部人員的簡易目標,讓他們可輕鬆地獲取敏感資料。由於非生產環境並沒有像生產環境那樣受到嚴格控制和管理,當資料洩露事故發生時,企業可能需要花費數百萬美元修復聲譽損害或者品牌價值損失。監管要求是資料混淆技術的另一個關鍵驅動因素。
例如,支付卡行業資料安全標準(PCI DSS)鼓勵商家加強支付卡資料安全,廣泛部署一致的資料安全做法,滿足技術和操作要求。PCI DSS要求商家的生產環境和資訊不能用於測試和開發。不當的資料洩露(無論是意外還是惡意事件)都會帶來毀滅性後果,並可能導致高昂的罰款或法律行為。
三、資料混淆用例
資料混淆技術的典型用例是當開發環境資料庫交由第三方供應商或外包商處理和管理時;
資料混淆是確保第三方供應商可執行其職責及功能非常重要的工具。通過部署資料混淆技術,企業可使用資料庫中相似值來替換敏感資訊,而不必擔心第三方供應商在開發期間暴露該資訊。
另一個典型用例是在零售業,零售商需要與市場研究公司共享客戶銷售點資料以運用高階分析演算法來分析客戶的購買模式和趨勢。零售商不必向研究公司提供真實的客戶資料,而可提供類似真實客戶資料的替代資料。
這種方法可幫助企業減少通過業務合作伙伴或其他第三方供應商洩露資料的風險。
四、採取的技術方案
1.資料倉庫內部方案
此處我使用的是Hive來做資料倉庫,然後在Hive內部分層,利用SQL, 加密演算法等從一個儲存資料的層次抽取到另一個層次。然後將這個層次的資料展示給外部。
2.資料外部使用方案
此處我們引用輕量級結構化資料庫Mysql或著其他的資料庫, 利用第三方開源元件將資料加密抽取過來。