Azure Storage系列之不可變blob

    Global Azure的功能比mooncake要提前起碼半年左右,有些可能還會更久,在Global其實去年就有一項功能叫做不可變blob,但是目前mooncake還看不到,這項功能是在blob裏的,主要功能是用於滿足數據方面的一些合規性

    

    顧名思義,這項功能開啓之後,可以保證blob的內容不會被篡改,在一些特定的場景下,這項功能會非常有用


    不可變的存儲可幫助醫療保健組織、金融機構和相關行業—特別—的經紀人組織可以安全地存儲數據。 在任何情況下,也可以利用不可變的存儲來防止修改或刪除關鍵數據。
    

    典型的應用程序包含:

    法規遵從:Azure Blob 存儲的不可變存儲可幫助組織達到 SEC 17a-4(f)、CFTC 1.31(d)、FINRA 和其他法規要求。 


    保護文檔保留: Azure Blob 存儲的不可變存儲確保任何用戶(包括具有帳戶管理權限的用戶)不能修改或刪除數據。


    法定持有:對於 Azure Blob 存儲,不可變的存儲使用戶能夠將敏感信息存儲在所需持續時間內的訴訟或業務使用狀態,直到刪除保留爲止。 此功能不僅限於法律用例,還可以被視爲基於事件的保留或企業鎖,需要根據事件觸發器或公司策略來保護數據。


    

    不可變存儲支持以下功能:

    基於時間的保留策略支持 :用戶可以將策略設置爲在指定的時間間隔內存儲數據。 設置基於時間的保留策略時,可以創建和讀取 blob,但不能修改或刪除 blob。 保持期到期後,可以刪除但不能覆蓋 blob。

    

    法律封存政策支持 :如果保留間隔未知,則用戶可以設置法律持有來存儲不可變的數據,直到清除法定持有。 設置合法保留策略後,可以創建和讀取 blob,但不能修改或刪除 blob。 每個法律封存都與用作標識符字符串的用戶定義的字母數字標記(如事例 ID、事件名稱等)相關聯。

    

    支持所有 Blob 層: WORM 策略獨立於 Azure Blob 存儲層,將應用到所有層:熱層、冷層和存檔層。 用戶可將工作負荷的數據轉換爲最具成本效益的層,同時保持數據的不可變性。

    

    容器級配置: 用戶可在容器級別配置基於時間的保留策略和法定保留標記。 通過使用簡單的容器級設置,用戶可以創建並鎖定基於時間的保留策略、擴展保留時間間隔、設置並清除法定保留,等等。 這些策略將應用到容器中的所有 Blob,不管是現有的還是新的 Blob。

    

    審覈日誌記錄支持:每個容器都包含策略審覈日誌。 它爲鎖定的基於時間的保留策略顯示最多7個基於時間的保留命令,幷包含用戶 ID、命令類型、時間戳和保留間隔。 對於法定保留,日誌包含用戶 ID、命令類型、時間戳和法定保留標記。 此日誌在策略的生存期內保留,並依照 SEC 17a-4 (f)規範。 " Azure 活動日誌" 顯示了所有控制平面活動的更全面的日誌;啓用Azure 診斷日誌時,會保留並顯示數據平面操作。 由用戶負責根據法規要求或其他要求永久存儲這些日誌。


    

    不可變blob包含兩種不同類型功能:

  • 基於時間的保留策略

  • 法定保留

    

    兩種方式各自有各自的使用特點,基於時間的保留策略需要設定一個具體的時間段,在時間段內blob無法被刪除或者修改,但有些場景下可能不確定需要保留的時間具體有多長,這種場景下則適合使用法定保留的功能,法定保留不需要設定時間段,而且還可以基於特定的case id進行標記,兩種模式都是基於container級別進行定義

    


    首先來看基於時間的保留策略如何配置,在container直接右鍵選擇Access Policy

1.png


    在policy type這裏選擇time-based retention,然後輸入需要保留的時間,時間會以天爲單位,最長可以達到1460002.png


    完成設置之後,可以看到狀態會是unlock,在這個狀態下,我們還可以對策略進行修改或者刪除,但是一旦lock之後,就只能對保留期限進行延長,而不允許縮短,並且不可以刪除策略,如果需要lock策略的話,直接右鍵即可

3.png



    當設置好策略之後,再進行編輯就會遇到報錯

    4.png



    


    如果是法律保留的話,可以看到,不需要設置保留期限,只需要設置好相關的tag即可

    5.png


    

    這兩種策略是可以疊加一起使用的

    6.png



    兩種策略疊加使用時遵循以下原則

方案Blob狀態
Blob操作被拒絕
容器和賬戶保護
Blob 的有效保留時間間隔尚未到期,並且/或者法定保留已設置不可變:不可刪除和寫入Put Blob1,put 塊1,put 塊列表1,刪除容器,刪除 blob,設置 blob 元數據,Put 頁,設置 Blob 屬性,快照 Blob,增量複製 Blob,追加塊2容器刪除被拒絕;存儲帳戶刪除操作被拒絕
Blob 的有效保留間隔已過期,未設置合法保留僅僅不可寫入(允許刪除操作)Put Blob1,put 塊1,put 塊列表1,設置 blob 元數據,put 頁面,設置 Blob 屬性,快照 Blob,增量複製 Blob,追加塊2如果受保護的容器中至少有1個 blob,則容器刪除操作被拒絕;僅對鎖定的基於時間的策略刪除存儲帳戶
未應用保留策略(無基於時間的保留期和無法定保留標記)可變


    還有一點就是策略不僅僅只對當前container裏的內容生效,之後上傳到container裏的內容一樣可以生效

    對於一些特定的需要保留的文件,建議上傳到blob之後,應用保留策略進行保護,以免被人篡改

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章