值區鎖定功能

設定方式

本頁面說明 bucket 鎖定功能,可讓您設定 Cloud Storage bucket 的保留政策。這項政策會控管值區中的物件必須保留多久。本功能也能讓您鎖定 bucket 的資料保留政策,徹底防止政策遭刪減或移除的狀況。

這項功能可提供無法變更的 Cloud Storage 儲存空間。 只要搭配詳細稽核記錄模式 (記錄 Cloud Storage 要求和回應詳情),bucket 鎖定功能就可以協助您遵循法規,例如與 FINRA、SEC 和 CFTC 相關的規範。bucket 鎖定功能也有助於因應醫療照護產業的某些資料保留法規。

總覽

  • 您可以新增「保留政策」到值區,以指定「保留期限」。

    • 設定 bucket 保留政策後,只有在 bucket 中物件的存續時間超過保留期限時,才能刪除或替換物件。

    • 這項政策會追溯套用至值區中的現有物件,以及新增至值區的物件。這與物件保留鎖定功能不同,後者可讓您定義個別物件的資料保留規定。

  • 您可以鎖定 bucket 的資料保留政策,永久套用至 bucket。

    • 政策一經鎖定即無法移除,也無法縮短保留期限。

    • 除非 bucket 中的所有物件都已達到保留期限,否則您無法刪除具有鎖定政策的 bucket。

    • 您可以延長鎖定政策的保留期限。

值區資料保留政策

您可以在建立新值區時加入保留政策,或者可在現有值區新增保留政策。對 bucket 套用資料保留政策,可確保 bucket 中目前和未來的所有物件,在達到政策定義的年限前,都無法刪除或替換。如果嘗試刪除或取代存在時間短於保留期限的物件,系統會傳回 403 - retentionPolicyNotMet 錯誤。

例如,假設您的值區有兩個物件:物件 A 在一個月前新增,而物件 B 在兩年前新增。如果您對值區套用保留期限為 1 年的資料保留政策,則在接下來的 11 個月內,您無法刪除或替換物件 A:物件 A 目前已存在 1 個月,但必須存在至少 1 年才能刪除或替換。物件 B 的存在時間大於保留期限,因此可以立即刪除或替換。如果您決定取代物件 B,這個新版物件 B 的年齡會從 0 年重新計算。

為了協助追蹤個別物件何時符合刪除資格,每個具備保留政策的值區中物件都有「保留到期時間」中繼資料。這類中繼資料會在物件達到保留期限時顯示日期和時間。

一般注意事項

使用保留政策時,請記住下列事項:

  • 除非 bucket 的資料保留政策已鎖定,否則您可以增加、減少或移除政策。

  • 物件的可編輯中繼資料不受儲存空間保留政策限制,即使物件本身無法修改,中繼資料仍可修改。

  • bucket 的資料保留政策包含「生效時間」,也就是 bucket 中所有物件保證符合資料保留期限的時間。

  • 如要查看在設有資料保留政策的值區中,特定物件最早可刪除的日期,請查看物件中繼資料的保留到期日部分。

其他功能的注意事項

以下是資料保留政策與其他 Cloud Storage 功能的互動方式:

  • 在採用物件版本管理的值區中,如果使用中物件版本的保留到期日尚未到來,仍可設為非現行版本,且在您套用資料保留政策時,值區中現有的任何版本化物件也會受到政策保護。

  • 如果物件設有事件型保留,則在保留期間內無法刪除。從物件中移除以事件為依據的保留後,物件的保留期限就會重設。

  • 個別物件可受 bucket 的資料保留政策和其本身的保留設定規範。如果物件同時受到這兩種保留設定的約束,則必須等到兩種保留設定都符合條件,才會解除保留。

  • 如果物件尚未達到保留期限,您就無法刪除加密鎖定儲存空間中物件的 Cloud Key Management Service 金鑰版本。詳情請參閱「用於加密鎖定物件的金鑰版本」。

  • 您可以使用物件生命週期管理,自動刪除值區中的物件,包含具有鎖定政策的值區。生命週期規則會在物件達成保留政策之後,才會刪除物件。

  • 如果 bucket 設有保留政策,請勿執行平行複合上傳,因為每個元件都必須達到 bucket 的最短保留期限,才能刪除。

  • 如果產生的物件會覆寫尚未達到保留期限的物件,則嘗試完成 XML API 分塊上傳會失敗。

  • 您可以在組織政策中使用資料保留政策限制,規定建立新值區時,或在現有值區中新增/更新資料保留政策時,必須納入具有特定保留期限的值區資料保留政策。

保留期限

保留期限是以秒為單位計算,但部分工具 (例如Google Cloud 控制台和 Google Cloud CLI) 為了方便起見,允許您使用其他時間單位設定及查看保留期限。在這種情況下,系統會套用下列轉換:

  • 一天視為 86,400 秒。
  • 一週為 7 天,也就是 604,800 秒。
  • 一個月視為 31 天,也就是 2,678,400 秒。
  • 一年視為 365.25 天,也就是 31,557,600 秒。

您可以設定的最大保留期限為 3,155,760,000 秒 (100 年)。

gcloud CLI

如要使用 gcloud CLI,請按照下列格式指定保留期限:

P#Y#M#W#DT#H#M#S

在這個格式中,每個 # 代表您指定的整數,後面應接時間單位。單位 Y、W、D、H 和 S 分別代表年、週、天、小時和秒。M 位於 P 後方時代表月份,位於 T 後方時則代表分鐘。M

您必須在保留期限中加入至少一組整數單位,但可以省略任何不需要的整數單位組。

舉例來說,P1DT720M 會將保留期限設為 1 天和 720 分鐘 (一天半)。

保留政策鎖定功能

鎖定 bucket 的保留政策後,就無法移除政策或縮短保留期限 (但仍可延長保留期限)。如果嘗試移除或縮短鎖定值區的政策期間,會得到 400 BadRequestException 錯誤。一旦鎖定保留政策,就必須等待值區中的每個物件達到保留期限時才可刪除值區。

鎖定 bucket 的保留政策後就無法復原,因此使用這項功能前,請務必瞭解相關影響。使用「未鎖定」政策時,您可以移除政策,以便在需要時刪除物件。鎖定政策後,您必須刪除整個 bucket,才能「移除」政策。不過,如果 bucket 內有物件尚未達到保留期限,您就無法刪除該 bucket。因此,如要「移除」鎖定的政策,必須等到 bucket 中的所有物件都達到保留期限,才能刪除 bucket。

此外,當您鎖定資料保留政策時,Cloud Storage 會自動對包含 bucket 的專案套用防刪除鎖定。防刪除鎖定啟用後,會封鎖 resourcemanager.projects.delete 權限,防止專案遭到刪除。如要刪除專案,專案擁有者或組織管理員必須先移除防刪除鎖定。

如要瞭解鎖定保留政策如何協助資料遵守記錄保留法規,請參閱法規遵循頁面。

後續步驟