為 Blob 版本設定不變性原則

Azure Blob 儲存體的不可變儲存體可讓使用者以 WORM (一次寫入,多次讀取) 狀態儲存商務關鍵性資料。 在 WORM 狀態下,您無法在使用者指定的間隔內修改或刪除資料。 您可設定 Blob 資料的永久性原則,以免資料遭覆寫和刪除。 不變性原則包含限時保留原則和合法保存。 如需 Blob 儲存體不變性原則的詳細資訊,請參閱使用不可變儲存體儲存商務關鍵性 Blob 資料

不變性原則的範圍可能是個別 Blob 版本或容器。 本文說明如何設定版本層級的不變性原則。 若要了解如何設定容器層級的不變性原則,請參閱設定容器的不變性原則

注意

在已啟用網路檔案系統 (NFS) 3.0 通訊協定或 SSH 檔案傳輸通訊協定 (SFTP) 的帳戶中,不支援不變性原則。

設定版本層級的不變性原則是兩個步驟的程序:

  1. 首先,在新的儲存體帳戶或新的或現有容器上啟用版本層級不變性的支援。 如需詳細資料,請參閱啟用版本層級不變性的支援
  2. 接下來,設定限時保留原則或合法保存,以套用至該容器中的一或多個 Blob 版本。

必要條件

若要設定版本層級限時保留原則,必須針對儲存體帳戶啟用 Blob 版本設定。 請注意,啟用 Blob 版本設定可能會產生計費影響。 若要了解如何啟用 Blob 版本設定,請參閱啟用和管理 Blob 版本設定

如需版本層級不變性原則支援的記憶體帳戶組態相關信息,請參閱 不可變 Blob 數據的版本層級 WORM 原則

啟用版本層級不變性的支援

在您可以將限時保留原則套用至 Blob 版本之前,您必須啟用版本層級不變性的支援。 您可以在新的儲存體帳戶或新的或現有容器上啟用版本層級不變性的支援。

在儲存體帳戶上啟用版本層級不變性支援

只有當您建立新的儲存體帳戶時,才可以啟用版本層級不變性的支援。

若要在 Azure 入口網站中建立儲存體帳戶時啟用版本層級不變性的支援,請遵循下列步驟:

  1. 在 Azure 入口網站中瀏覽至 [儲存體帳戶] 頁面。

  2. 選取 [建立] 按鈕以建立新的帳戶。

  3. 填寫 [基本] 索引標籤。

  4. 在 [資料保護] 索引標籤的 [存取控制] 底下,選取 [啟用版本層級的不變性支援]。 當您核取此方塊時,也會自動核取 [啟用 Blob 的版本設定] 方塊。

  5. 選取 [檢閱 + 建立] 以驗證您的帳戶參數,並建立儲存體帳戶。

    顯示如何使用版本層級不變性支援建立記憶體帳戶的螢幕快照

建立儲存體帳戶之後,您可以設定帳戶的預設版本層級原則。 如需詳細資訊,請參閱設定預設限時保留原則

如果已啟用儲存體帳戶的版本層級不變性支援,且帳戶包含一或多個容器,則您必須先刪除所有容器,才能刪除儲存體帳戶,即使帳戶或容器沒有任何作用中的不變性原則也一樣。

注意

雖然未鎖定的原則可以刪除,但版本層級的不變性在儲存體帳戶上啟用後便無法停用。

在容器上啟用版本層級不變性支援

新的和現有的容器都可以設定為支援版本層級不變性。 不過,現有的容器必須進行移轉程序,才能啟用支援。

請記住,啟用容器的版本層級不變性支援並不會讓該容器中的資料成為不可變。 您也必須為容器設定預設不變性原則,或針對特定 Blob 版本設定不變性原則。 如果您在建立儲存體帳戶時為其啟用版本層級不變性,也可以為該帳戶設定預設不變性原則。

啟用新容器的版本層級不變性

若要使用版本層級不變性原則,您必須先明確啟用容器上版本層級 WORM 的支援。 當您建立容器時,或當您將版本層級不變性原則新增至現有的容器時,您可以啟用版本層級 WORM 的支援。

若要在 Azure 入口網站中建立支援版本層級不變性的容器,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至儲存體帳戶的 [容器] 頁面,然後選取 [新增]

  2. 在 [新增容器] 對話方塊中,提供容器的名稱,然後展開 [進階] 區段。

  3. 選取 [啟用版本層級的不變性支援],以啟用容器的版本層級不變性。

    顯示如何建立已啟用版本層級不變性之容器的螢幕快照

如果容器的版本層級不變性支援已啟用,且容器包含一或多個 Blob,則您必須先刪除容器中的所有 Blob,才可以刪除容器,即使容器或其 Blob 沒有任何作用中的不變性原則也一樣。

移轉現有容器以支援版本層級不變性

若要設定現有容器的版本層級不變性原則,您必須移轉容器以支援版本層級不可變儲存體。 容器移轉可能需要一些時間,而且無法還原。 針對一個儲存體帳戶,您一次只能移轉 10 個容器。

若要移轉現有容器以支援版本層級不變性原則,容器必須設定容器層級限時保留原則。 除非容器具有現有的原則,否則移轉會失敗。 容器層級原則的保留間隔會維持為容器上預設版本層級原則的保留間隔。

如果容器具有現有的容器層級合法保存,則在移除合法保存之前無法進行移轉。

若要移轉容器以支援 Azure 入口網站中版本層級不可變原則,請依照下列步驟操作:

  1. 瀏覽至所需的容器。

  2. 在容器的捷徑功能表中,選取 [存取原則]

  3. 在 [不可變 Blob 儲存體] 底下選取 [新增原則]

  4. 在 [原則類型] 欄位中,選擇 [限時保留],並指定保留間隔。

  5. 選取 [啟用版本層級不變性]

  6. 選取 [確定],以指定的保留間隔建立容器層級原則,然後開始移轉至版本層級不變性支援。

    顯示如何移轉現有容器以支援版本層級不變性的螢幕快照

當移轉作業正在進行時,容器上的原則範圍會顯示為 [容器]。 容器移轉進行時,不允許任何與管理版本層級不變性原則相關的作業。 Blob 資料的其他作業在移轉期間會正常進行。

顯示處理中容器移轉的螢幕快照

完成移轉之後,容器上的原則範圍會顯示為 [版本]。 所顯示的原則是容器上的預設原則,此原則會自動套用至後續在容器中建立的所有 Blob 版本。 您可以藉由指定該版本的自訂原則,在任何版本上覆寫預設原則。

顯示已完成容器移轉的螢幕快照

設定預設限時保留原則

啟用儲存體帳戶或個別容器的版本層級不變性支援之後,您可以為帳戶或容器指定預設版本層級限時保留原則。 當您為帳戶或容器指定預設原則時,該原則預設會套用至帳戶或容器中建立的所有新 Blob 版本。 您可以覆寫帳戶或容器中任何個別 Blob 版本的預設原則。

預設原則不會自動套用至設定預設原則之前即已存在的 Blob 版本。

如果您移轉現有容器以支援版本層級不變性,則在移轉之前生效的容器層級原則會移轉至容器的預設版本層級原則。

若要為儲存體帳戶或容器設定預設版本層級不變性原則,請使用 Azure 入口網站、PowerShell、Azure CLI 或其中一個 Azure 儲存體 SDK。 請確定您已啟用儲存體帳戶或容器的版本層級不變性支援,如啟用版本層級不變性的支援中所述。

若要為 Azure 入口網站中的儲存體帳戶設定預設版本層級不變性原則,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至您的儲存體帳戶。

  2. 在 [資料管理] 下,選取 [資料保護]

  3. 在 [資料保護] 頁面上,找出 [存取控制] 區段。 如果建立儲存體帳戶時支援版本層級不變性,則 [存取控制] 區段中會出現 [管理原則] 按鈕。

    顯示如何管理記憶體帳戶預設版本層級不變性原則的螢幕快照

  4. 選取 [管理原則] 按鈕以顯示 [管理版本層級不變性原則] 對話方塊。

  5. 為儲存體帳戶新增預設限時保留原則。

    顯示如何為記憶體帳戶設定預設版本層級保留原則的螢幕快照

若要為 Azure 入口網站中的容器設定預設版本層級不變性原則,請遵循下列步驟:

  1. 在 Azure 入口網站中,瀏覽至 [容器] 頁面,然後找出您要套用原則的容器。

  2. 在容器的捷徑功能表中選擇 [存取原則]

  3. 在 [存取原則] 對話方塊的 [不可變的 Blob 儲存體] 區段下,選擇 [新增原則]

  4. 選取 [限時保留原則],並指定保留間隔。

  5. 選擇是否允許受保護的附加寫入。

    [附加 Blob] 選項可讓您的工作負載使用 [附加區塊] 作業,將新的資料區塊新增至附加 Blob 的結尾。

    [區塊和附加 Blob] 選項新增了將新區塊寫入至區塊 Blob 的功能,而擴充此支援。 Blob 儲存體 API 不提供讓應用程式直接執行此動作的途徑。 不過,應用程式可以使用 Data Lake Storage Gen2 API 中提供的附加和排清方法來達成此目的。 此外,此屬性可讓 Microsoft 應用程式 (例如 Azure Data Factory) 使用內部 API 來附加資料區塊。 如果您的工作負載相依於上述任何工具,您可以使用此屬性,以避免在這些工具嘗試將資料附加至 Blob 時出現錯誤。

    若要深入了解這些選項,請參閱允許受保護的附加 Blob 寫入

    顯示如何設定範圍為容器的不變性原則的螢幕快照。

判斷容器上的保留原則範圍

若要判斷 Azure 入口網站中限時保留原則範圍,請遵循下列步驟:

  1. 瀏覽至所需的容器。

  2. 在容器的捷徑功能表中,選取 [存取原則]

  3. 在 [不可變的 Blob 儲存體] 下,找出 [範圍] 欄位。 如果容器設定為使用預設版本層級保留原則,則範圍會設為 [版本],如下圖所示:

    此螢幕快照顯示針對容器設定的預設版本層級保留原則

  4. 如果容器設定為使用容器層級保留原則,則範圍會設為 [容器],如下圖所示:

    顯示針對容器設定容器層級保留原則的螢幕快照

在現有版本上設定限時保留原則

限時保留原則會在指定的間隔內,將 Blob 資料維持在 WORM 狀態。 如需限時保留原則的詳細資訊,請參閱不可變 Blob 資料的限時保留原則

您有三個選項可以設定 Blob 版本的限時保留原則:

  • 選項 1:您可以在套用至帳戶或容器中所有物件的儲存體帳戶或容器上設定預設原則。 除非您透過在個別 Blob 版本上設定原則來明確覆寫,否則帳戶或容器中的物件將會繼承預設原則。 如需詳細資訊,請參閱設定預設限時保留原則
  • 選項 2:您可以在目前的 Blob 版本上設定原則。 如果預設原則存在且已解除鎖定,此原則可以覆寫在儲存體帳戶或容器上設定的預設原則。 根據預設,在設定原則之後所建立的任何舊版,都會繼承目前 Blob 版本的原則。 如需詳細資訊,請參閱在目前的 Blob 版本上設定保留原則
  • 選項 3:您可以在舊版的 Blob 上設定原則。 如果預設原則已存在並且已解除鎖定,此原則可以覆寫目前版本上設定的預設原則。 如需詳細資訊,請參閱在舊版的 Blob 上設定保留原則

如需 Blob 版本設定的詳細資訊,請參閱 Blob 版本設定

當您瀏覽至容器時,Azure 入口網站會顯示 Blob 的清單。 每個顯示的 Blob 都代表 Blob 的目前版本。 若要存取舊版的清單,您可以開啟 Blob 的捷徑功能表,然後選擇 [檢視舊版]

在目前的 Blob 版本上設定保留原則

若要在目前的 Blob 版本上設定限時保留原則,請遵循下列步驟:

  1. 瀏覽至包含目標 Blob 的容器。

  2. 在 Blob 的捷徑功能表中選擇 [存取原則]。 如果已針對舊版設定限時保留原則,則會出現在 [存取原則] 對話方塊中。

  3. 在 [存取原則] 對話方塊的 [不可變的 Blob 版本] 區段下,選擇 [新增原則]

  4. 選取 [限時保留原則],並指定保留間隔。

  5. 選取 [確定],將原則套用至 Blob 的目前版本。

    顯示如何為目前版本的 Blob 設定保留原則的螢幕快照

您可以檢視 Blob 的屬性,以查看是否已在目前的版本上啟用原則。 選取 Blob,然後瀏覽至 [概觀] 索引標籤,並找出 [版本層級不變性原則] 屬性。 如果原則已啟用,[保留期間] 屬性會顯示原則的到期日期和時間。 請記住,原則可能會針對目前的版本進行設定,如果預設原則有效,可能會繼承自 Blob 的父容器。

顯示 blob 版本上不變性原則屬性的螢幕快照,顯示 Azure 入口網站

在舊版的 Blob 上設定保留原則

您也可以在舊版的 Blob 上設定限時保留原則。 舊版永遠不變,因此無法修改。 不過,您可以刪除舊版。 限時保留原則會在其生效時防止刪除。

若要在舊版 Blob 上設定限時保留原則,請遵循下列步驟:

  1. 瀏覽至包含目標 Blob 的容器。

  2. 選取 Blob,然後瀏覽至 [版本] 索引標籤。

  3. 找出目標版本,然後在版本的捷徑功能表中選擇 [存取原則]。 如果已針對舊版設定限時保留原則,則會出現在 [存取原則] 對話方塊中。

  4. 在 [存取原則] 對話方塊的 [不可變的 Blob 版本] 區段下,選擇 [新增原則]

  5. 選取 [限時保留原則],並指定保留間隔。

  6. 選取 [確定],將原則套用至 Blob 的目前版本。

    顯示如何在 Azure 入口網站 中設定舊版 Blob 保留原則的螢幕快照

在上傳 Blob 時設定限時保留原則

當您使用 Azure 入口網站將 Blob 上傳至支援版本層級不變性的容器時,您有數個選項可以針對新的 Blob 設定限時保留原則:

  • 選項 1:如果已針對容器設定預設保留原則,您可以使用容器的原則來上傳 Blob。 當容器上有保留原則時,預設會選取此選項。
  • 選項 2:如果已針對容器設定預設保留原則,您可以選擇藉由為新的 Blob 定義自訂保留原則,或上傳沒有原則的 Blob,來覆寫預設原則。
  • 選項 3:如果未設定容器的預設原則,您可以上傳具有自訂原則或沒有任何原則的 Blob。

若要在上傳 Blob 時設定限時保留原則,請遵循下列步驟:

  1. 瀏覽至所需的容器,然後選取 [上傳]

  2. 在 [上傳] Blob 對話方塊中,展開 [進階] 區段。

  3. 在 [保留原則] 欄位中,為新的 Blob 設定限時保留原則。 如果有針對容器設定的預設原則,預設會選取該原則。 您也可以指定 Blob 的自訂原則。

    螢幕快照,顯示在 Azure 入口網站 中設定 Blob 上傳保留原則的選項

修改或刪除已解除鎖定的保留原則

您可以修改解除鎖定的限時保留原則,以縮短或延長保留間隔。 您也可以刪除解除鎖定的原則。 針對 Blob 版本編輯或刪除解除鎖定的限時保留原則,不會影響任何其他版本的有效原則。 如果容器有生效的預設限時保留原則,則具有已修改或已刪除原則的 Blob 版本將不會再從容器繼承。

若要在 Azure 入口網站中修改解除鎖定的限時保留原則,請遵循下列步驟:

  1. 找出目標容器或版本。 在容器或版本的捷徑功能表中選擇 [存取原則]

  2. 找出現有已解除鎖定的不變性原則。 在捷徑功能表中選取 [編輯]

    顯示如何在 Azure 入口網站 中編輯現有版本層級時間型保留原則的螢幕快照

  3. 提供原則到期的新日期和時間。

若要刪除解除鎖定的原則,請從捷徑功能表中選取 [刪除]

鎖定限時保留原則

當您完成測試限時保留原則時,您可以鎖定原則。 鎖定的原則符合 SEC 17a-4(f) 和其他法規合規性。 您可以將鎖定原則的保留間隔延長最多五倍,但是無法縮短。

鎖定原則之後,您就無法將其刪除。 不過,您可以在保留間隔到期之後刪除 Blob。

若要在 Azure 入口網站中鎖定原則,請遵循下列步驟:

  1. 找出目標容器或版本。 在容器或版本的捷徑功能表中選擇 [存取原則]

  2. 在 [不可變的 Blob 版本] 區段下,找出現有的已解除鎖定原則。 從捷徑功能表中選取 [鎖定原則]

  3. 確認您想要鎖定原則。

    顯示如何在 Azure 入口網站 中鎖定以時間為基礎的保留原則的螢幕快照

合法保存會儲存不可變的資料,直到明確清除合法保存為止。 若要深入了解合法保存原則,請參閱不可變 Blob 資料的合法保存

若要在 Blob 版本上設定合法保存,您必須先在儲存體帳戶或容器上啟用版本層級不變性支援。 如需詳細資訊,請參閱啟用版本層級不變性的支援

若要使用 Azure 入口網站設定 Blob 版本的合法保存,請遵循下列步驟:

  1. 找出目標版本,這可能是目前的版本或舊版的 Blob。 在目標版本的捷徑功能表中,選擇 [存取原則]

  2. 在 [不可變的 Blob 版本] 區段下,選取 [新增原則]

  3. 選擇 [合法保存] 作為原則類型,然後選取 [確定] 以套用。

下圖顯示已設定限時保留原則和合法保存的最新版本 Blob。

顯示針對 Blob 版本設定合法保留的螢幕快照

若要清除合法保存,請瀏覽至 [存取原則] 對話方塊,在捷徑功能表中選擇 [刪除]

下一步