本页面介绍了如何设置和管理软删除政策。您可以为存储桶设置新政策以启用软删除,还可以更新和检查现有政策的状态。如需了解如何停用软删除,请参阅停用软删除。
如需了解如何列出和恢复软删除的对象,请参阅使用软删除的对象。如需了解如何列出和恢复软删除的存储桶,请参阅使用软删除的存储桶。
所需的角色
如需获得启用和管理软删除政策所需的权限,请让您的管理员为您授予存储桶或包含该存储桶的项目的 Storage Admin (roles/storage.admin
) IAM 角色。
此预定义角色包含启用和管理软删除政策所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
您需要具备以下权限才能启用和管理软删除政策:
-
storage.buckets.get
-
storage.buckets.update
-
storage.buckets.list
(仅当您计划使用 Trusted Cloud 控制台执行本页面上的说明时,才需要此权限)
如需了解如何授予角色,请参阅将 IAM 与存储桶搭配使用或管理对项目的访问权限。
修改存储桶的软删除政策
新的软删除保留时长仅适用于您在软删除政策生效后删除的对象或存储桶。现有的软删除对象不会受对软删除政策所做的更新的影响,它们会保留一段时间,这段时间是它们被删除时生效的时长。
请按照以下说明修改存储桶的软删除政策:
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要修改软删除政策的存储桶的名称。
点击保护标签页。
在软删除政策(用于数据恢复)部分,按照以下步骤添加新的软删除政策或修改现有政策的保留时长:
点击修改。
在随即显示的设置软删除政策对话框中,选择时间单位和时间长度,指定软删除保留时长。
点击保存。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
如需添加或修改存储桶的软删除政策,请使用带有 --soft-delete-duration
标志的 gcloud storage buckets update
命令:
gcloud storage buckets update gs://BUCKET_NAME --soft-delete-duration=SOFT_DELETE_DURATION
其中:
BUCKET_NAME
是存储桶的名称。例如my-bucket
。SOFT_DELETE_DURATION
指定软删除保留时长。- 单位
s
表示秒。 - 单位
d
表示天数。 - 单位
m
表示月。
例如:
7d43200s
将保留时长设置为七天半(7 天 43,200 秒)。2w1d
将保留时长设置为两周零一天。
- 单位
REST API
JSON API
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。创建一个包含以下信息的 JSON 文件:
{ "softDeletePolicy": { "retentionDurationSeconds": "TIME_IN_SECONDS" } }
其中,
TIME_IN_SECONDS
是您要设置的 软删除保留时长(以秒为单位)。例如,2678400
表示 2,678,400 秒(31 天)。使用
cURL
,通过PATCH
Bucket 请求调用 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"
其中:
JSON_FILE_NAME
是您在第 2 步中创建的 JSON 文件的路径。BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。
检查存储桶是否启用了软删除政策
控制台
- 在 Trusted Cloud 控制台中,转到 Cloud Storage 存储桶页面。
在存储桶列表中,点击要检查软删除政策的存储桶的名称。
点击保护标签页。
状态会显示在软删除政策(用于数据恢复)部分中。
您还可以使用“保护”标签页来检查存储桶是否有软删除政策。
如需了解如何在 Trusted Cloud 控制台中获取失败的 Cloud Storage 操作的详细错误信息,请参阅问题排查。
命令行
如需检查存储桶的软删除政策状态,请使用 gcloud storage buckets describe
命令:
gcloud storage buckets describe gs://BUCKET_NAME \ --format="default(soft_delete_policy)"
其中:
BUCKET_NAME
是存储桶的名称。例如my-bucket
。
REST API
JSON API
安装并初始化 gcloud CLI,以便为
Authorization
标头生成访问令牌。使用
cURL
,通过GET
Bucket 请求调用 JSON API:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.s3nsapis.fr/storage/v1/b/BUCKET_NAME?fields=softDeletePolicy"
其中
BUCKET_NAME
是相关存储桶的名称,例如my-bucket
。