你可以保持沉默,但你所说的一切都将成为呈堂证供——浅谈Azure WORM保护
本文作者|Yuan Han
本文來源|Reid爸的菜園子
美國安然事件后,電子數(shù)據(jù)的合規(guī)性保存越來越受到重視;各國政府制定了一系列的法律,如美國《賽班斯法案》等,對于不同類型的電子數(shù)據(jù)保留期限做了嚴格規(guī)定;國內(nèi)也沒落后,以醫(yī)療行業(yè)為例,《電子病歷基本規(guī)范》等一系列法規(guī),規(guī)定了不同類型醫(yī)療數(shù)據(jù)的保留周期,其他行業(yè)也如此。
電子數(shù)據(jù)的保留,不只是將數(shù)據(jù)存起來,還需要做到在規(guī)定的期限內(nèi)防篡改(增刪改等操作),才滿足合規(guī)性要求。從存儲角度來看,這就是經(jīng)常提到的WORM(Write Once, Read Many )。
隨著越來越多用戶將數(shù)據(jù)長期保留在公有云,Azure也引入了不可變Blob的服務(wù),來實現(xiàn)對數(shù)據(jù)的WORM保護。
合規(guī)性
數(shù)據(jù)WORM保護并不是簡單的說自己滿足就可以,而是要經(jīng)過相關(guān)法規(guī)認證,才能通過審計。
Azure的不可變Blob滿足SEC 17a-4(f)、CFTC 1.31(d)、FINRA 和其他法規(guī)要求。在國內(nèi),雖然還沒有明確的相應(yīng)法規(guī),但AzureChina也已經(jīng)引入WORM保護的服務(wù)。
保護范圍
保護對象:WORM保護針對的對象是Block Blob。Append Blob及Page Blob由于其特性,不滿足WORM保護需求
保護顆粒度:以容器為單位,WORM保護對容器內(nèi)所有對象同時生效
適用存儲賬戶:Blob存儲賬戶及通用存儲賬戶v2可以實施WORM保護,通用存儲賬戶v1目前還沒有WORM功能,但可以升級為通用存儲賬戶v2來實現(xiàn)此功能
配置過程
Azure的WORM保護分為兩種類型:基于時間的保留和依法保留。對一個容器,既可以配置其中一種策略,也可以兩種都配置。
WORM保護的配置很簡單,進入創(chuàng)建好的容器里,在訪問策略里添加策略即可:
依法保留
首先添加一個依法保留的策略,在添加策略的下拉框選擇依法保留:
依法保留的意義是按照某種規(guī)定防止數(shù)據(jù)被篡改,例如臨時需要將一個數(shù)據(jù)鎖定,但沒有固定期限,直到取消;為了記錄保留數(shù)據(jù)的原因,需要添加至少一個標記:
添加完成,可以在不可變存儲的策略中看到:
現(xiàn)在給容器中上傳一個數(shù)據(jù),以一個文本文件為例:
可以看到文件可正確上傳。
現(xiàn)刪除文件:
發(fā)現(xiàn)由于啟用了WORM保護,無法刪除:
更新文件元數(shù)據(jù)也不成功:
編輯文件,仍然失敗
現(xiàn)在上傳一個同名文件來覆蓋原文件:
還是失敗:
從如上測試可以看出,在啟用了WORM保護的容器里,文件只能上傳,不能被修改刪除或覆蓋,有效保證了原始數(shù)據(jù)安全。
那么依法保留的生命周期是多久?如下可以看到,依法保留的策略可以編輯:
在編輯頁面,可以對該策略的標記進行增加或刪除:
當一個策略所有的標記被刪除時,該策略被自動刪除。
問題來了,如果一個有操作權(quán)限的人員刪除策略后修改了原始文件,然后在加上策略,是否就意味著WORM保護失效?現(xiàn)在將容器里的文件刪除并重新加上相同的依法保留策略。雖然操作沒問題,但是在存儲賬戶的日志里,記錄下了所有操作:
并且在每條日志的詳細信息里均可看到操作人員:
所以合規(guī)性審計時,并不只是簡單的查看是否啟用了策略,還要檢查日志,確認是否有非法操作。
基于時間的保留
另一種WORM保護的策略是基于時間的保留:
基于時間的保留需要設(shè)置需要設(shè)置一個保留期,以天為單位,范圍是1——146000,即保留期為1天到400年。
設(shè)置好基于時間的保留后,會立即生效,但是狀態(tài)為已解鎖:
此時可隨意編輯策略(修改保留期)甚至刪除策略:
這相當于給了一個反悔期(當然所有操作仍然會被記錄)。但是如果選擇鎖定策略并確認后:
策略的狀態(tài)變?yōu)橐焰i定:
策略不可刪除,只能編輯:
但是編輯的次數(shù)不能超過5次,并且保留期只能增加不能減少:
還有一點需注意,保留期滿后,數(shù)據(jù)仍然不可修改,只能刪除。
多策略
當為一個容器同時設(shè)置兩種類型的策略時,將同時生效,例如:
任意一個策略有效:數(shù)據(jù)不能做任何修改
兩種策略都失效:收基于時間保留的影響,數(shù)據(jù)只能刪除不能修改
數(shù)據(jù)分層的影響
受WORM保護的數(shù)據(jù),仍可以在熱、冷、歸檔三層中任意轉(zhuǎn)換,不影響保留策略;也如同沒有WORM保護的數(shù)據(jù),放入歸檔層后不能直接訪問,需要恢復(fù)到熱層或冷層。
總結(jié)
經(jīng)過測試可以看出,Azure的WORM功能可有效提供數(shù)據(jù)保護,作為審計的依據(jù);結(jié)合數(shù)據(jù)分層功能,可作為用戶長期低成本合規(guī)保存數(shù)據(jù)的地方。
總結(jié)
以上是生活随笔為你收集整理的你可以保持沉默,但你所说的一切都将成为呈堂证供——浅谈Azure WORM保护的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用 docker-compose 启动
- 下一篇: 设计模式之总体介绍