您可以使用物件保留功能,防止 Cloud Storage 資料遭到刪除或替換。這些保留措施可協助您符合法規遵循或法律探索要求。您可以對個別物件套用事件型和暫時性保留。此外,您也可以設定 bucket,根據預設對新物件套用事件型保留。
本頁說明如何使用物件保留功能,包括預設對新物件套用保留,以及對個別物件套用保留。
所需權限
如要在 Cloud Storage 中使用這項功能,您必須具備足夠的權限,才能查看及更新 Cloud Storage 中的 bucket 和物件:
如果您是 bucket 所在專案的擁有者,通常會具備必要權限。
如果您使用 IAM,則應具備相關 bucket 的
storage.buckets.update、storage.buckets.get、storage.objects.update和storage.objects.get權限。如要瞭解如何取得具備這些權限的角色 (例如儲存空間管理員),請參閱「使用 IAM 權限」一文。如果您使用 ACL,則應擁有相關值區和其中物件的 OWNER 權限。如需操作說明,請參閱「設定 ACL」。
使用預設事件型保留屬性
下列工作說明如何設定及查看 bucket 的預設事件型保留屬性。啟用這個屬性時,系統會對新增到值區的物件自動提交依據事件的訴訟保留。
設定預設事件型保留屬性
如要啟用或停用 bucket 的預設事件型保留屬性,請按照下列步驟操作:
控制台
- 前往 Cloud de Confiance 控制台的「Cloud Storage bucket」頁面。
在 bucket 清單中,點選要設定預設事件型保留屬性的 bucket 名稱。
選取靠近頁面頂端的「保護」分頁標籤。
值區的目前狀態會顯示在「預設以事件為準的暫緩處置選項」部分。
在「Default event-based hold option」(預設事件型保留選項) 部分,按一下目前狀態即可變更。
狀態會顯示為「已啟用」或「已停用」。
如要瞭解如何在 Cloud de Confiance 控制台中取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」。
指令列
使用 gcloud storage buckets update 指令並加上適當的旗標:
gcloud storage buckets update gs://BUCKET_NAME FLAG
其中:
BUCKET_NAME是相關 bucket 的名稱。例如:my-bucket。FLAG可以是--default-event-based-hold(啟用預設的事件型物件保留) 或--no-default-event-based-hold(停用預設的事件型物件保留)。
用戶端程式庫
C++
詳情請參閱「Cloud Storage C++ API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留:
下列範例會停用 bucket 的預設事件型保留:
C#
詳情請參閱 Cloud Storage C# API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留:
下列範例會停用 bucket 的預設事件型保留政策:
Go
詳情請參閱「Cloud Storage Go API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留政策:
下列範例會停用 bucket 的預設事件型保留政策:
Java
詳情請參閱 Cloud Storage Java API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留:
下列範例會停用 bucket 的預設事件型保留:
Node.js
詳情請參閱「Cloud Storage Node.js API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留:
下列範例會停用 bucket 的預設事件型保留政策:
PHP
詳情請參閱「Cloud Storage PHP API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留:
下列範例會停用 bucket 的預設事件型保留:
Python
詳情請參閱「Cloud Storage Python API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留政策:
下列範例會停用 bucket 的預設事件型保留:
Ruby
詳情請參閱「Cloud Storage Ruby API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下列範例會為 bucket 啟用預設的事件型保留政策:
下列範例會停用 bucket 的預設事件型保留政策:
Rust
下列範例會為 bucket 啟用預設的事件型保留:
下列範例會停用 bucket 的預設事件型保留:
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。建立包含下列資訊的 JSON 檔案:
{ "defaultEventBasedHold": STATE }
其中 STATE 為
true或false。使用
cURL來透過PATCH值區要求呼叫 JSON API:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=defaultEventBasedHold"
其中:
JSON_FILE_NAME是您在步驟 2 建立的檔案路徑。BUCKET_NAME是相關 bucket 的名稱。例如:my-bucket。
XML API
XML API 無法使用物件訴訟保留,請改用其他 Cloud Storage 工具,例如 gcloud CLI。
取得 bucket 的預設保留狀態
如要查看值區是否會對新物件預設提交依據事件的訴訟保留,請按照以下指示操作:
控制台
- 前往 Cloud de Confiance 控制台的「Cloud Storage bucket」頁面。
在 bucket 清單中,點選要檢查預設事件狀態的 bucket 名稱。
選取頁面頂端的「保護」分頁標籤。
狀態會顯示在「預設事件型保留選項」部分。
如要瞭解如何在 Cloud de Confiance 控制台中取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」。
指令列
使用 gcloud storage buckets describe 指令,並加上 --format 旗標:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(default_event_based_hold)"
其中 BUCKET_NAME 是要查看狀態的 bucket 名稱。例如:my-bucket。
如果成功,回應會類似以下範例:
default_event_based_hold: true
用戶端程式庫
C++
詳情請參閱 Cloud Storage C++ API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
C#
詳情請參閱「Cloud Storage C# API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Go
詳情請參閱「Cloud Storage Go API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Java
詳情請參閱 Cloud Storage Java API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Node.js
詳情請參閱 Cloud Storage Node.js API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
PHP
詳情請參閱「Cloud Storage PHP API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Python
詳情請參閱 Cloud Storage Python API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Ruby
詳情請參閱 Cloud Storage Ruby API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Rust
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL來透過包含所需fields的GET值區要求呼叫 JSON API:curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=defaultEventBasedHold"
其中
BUCKET_NAME是相關 bucket 的名稱。例如:my-bucket。如果值區已啟用預設為依事件保留,回應會如下列範例所示:
{ "defaultEventBasedHold": true }
XML API
XML API 無法使用物件訴訟保留,請改用其他 Cloud Storage 工具,例如 gcloud CLI。
管理個別物件保留設定
下列工作說明如何修改及查看個別物件的保留。
設定或解除物件保留
如要對 bucket 中的物件設定或解除訴訟保留,請按照下列步驟操作:
控制台
- 前往 Cloud de Confiance 控制台的「Cloud Storage bucket」頁面。
在 bucket 清單中,點選含有要保留或移除保留物件的 bucket 名稱。
找出要套用或移除保留設定的物件,然後選取名稱旁的核取方塊。
按一下 [Manage holds] (管理訴訟保留) 按鈕。
「Manage holds」(管理訴訟保留) 視窗隨即出現。
視需要勾選或取消勾選各訴訟保留類型的核取方塊。
按一下 [Save hold settings] (儲存訴訟保留設定)。
如要瞭解如何在 Cloud de Confiance 控制台中取得 Cloud Storage 作業失敗的詳細錯誤資訊,請參閱「疑難排解」。
指令列
使用 gcloud storage objects update 指令,並加上適當的旗標:
gcloud storage objects update gs://BUCKET_NAME/OBJECT_NAME FLAG
其中:
BUCKET_NAME是相關 bucket 的名稱。例如:my-bucket。OBJECT_NAME是相關物件的名稱。例如:pets/dog.png。FLAG是下列其中一項:--event-based-hold,即可對物件啟用事件型保留。--no-event-based-hold,即可停用物件的任何事件型保留。--temporary-hold:對物件啟用暫時性保留。--no-temporary-hold:停用物件的任何暫時性保留。
如要進一步瞭解保留類型,請參閱「物件保留」。
用戶端程式庫
C++
詳情請參閱「Cloud Storage C++ API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
C#
詳情請參閱 Cloud Storage C# API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
Go
詳情請參閱 Cloud Storage Go API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
Java
詳情請參閱「Cloud Storage Java API 參考文件」。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
Node.js
詳情請參閱 Cloud Storage Node.js API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
PHP
詳情請參閱 Cloud Storage PHP API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
Python
詳情請參閱 Cloud Storage Python API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
Ruby
詳情請參閱 Cloud Storage Ruby API 參考文件。
如要向 Cloud Storage 進行驗證,請設定應用程式預設憑證。詳情請參閱「設定用戶端程式庫的驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
Rust
下例示範如何對物件設定依據事件的訴訟保留:
下例示範如何釋出物件的依據事件訴訟保留:
下例示範如何對物件設定暫時性訴訟保留:
下例示範如何釋出物件的暫時性訴訟保留:
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。建立包含下列資訊的 JSON 檔案:
{ "HOLD_TYPE": STATE }
其中:
HOLD_TYPE是您要對物件設定或解除的保留類型。例如:temporaryHold或eventBasedHold。如要進一步瞭解保留類型,請參閱「物件保留」。STATE是true(用於設定保留) 或false(用於解除保留)。
使用
cURL呼叫 JSON API,並發出PATCHObject 要求:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME/o/OBJECT_NAME"
其中:
JSON_FILE_NAME是您在步驟 2 建立的檔案路徑。BUCKET_NAME是相關 bucket 的名稱。例如:my-bucket。OBJECT_NAME是相關物件的網址編碼名稱。例如pets/dog.png,網址編碼為pets%2Fdog.png。
XML API
XML API 無法使用物件訴訟保留,請改用其他 Cloud Storage 工具,例如 gcloud CLI。
取得物件的保留狀態
如要查看物件是否有保留狀態,請按照查看物件中繼資料的一般操作說明進行。
大量設定或解除物件保留
如要透過單一工作對數百萬或數十億個物件設定或解除保留,請使用 儲存空間批次作業。如要建立工作,請在資訊清單檔案中提供物件清單,或使用物件前置字串,指定要設定或解除訴訟保留的物件。指定物件清單後,請建立批次作業工作,更新物件保留狀態。