使用安全锁保护项目免遭意外删除

本文档适用于希望针对项目删除添加保护措施的项目所有者组织管理员

您可以为项目添加安全锁,以防止项目被删除,直到您移除该安全锁。这对于保护特别重要的项目非常有用。

gcloud 命令行工具是与项目安全锁进行交互的最简单方法。如果您尚未安装该工具,可以使用 Google Cloud Shell

为项目添加安全锁

如要对项目设置安全锁,用户必须拥有 resourcemanager.projects.updateLiens 权限,该权限由 roles/ownerroles/resourcemanager.lienModifier 角色授予。

gcloud alpha resource-manager liens create \
  --restrictions=resourcemanager.projects.delete \
  --reason="Super important production system"

liens create 的可用参数为:

  • --project - 要应用安全锁的项目。
  • --restrictions - 要阻止的 IAM 权限列表,该列表以英文逗号分隔。
  • --reason - 为何应用该安全锁的直观易懂的说明。
  • --origin - 短字符串,表示发起安全锁的用户/系统。必需,但如果未提供,gcloud 工具将自动填入用户的电子邮件地址。

目前,项目的唯一有效限制是 resourcemanager.projects.delete

列出项目的安全锁

要列出应用于项目的安全锁,用户必须具有 resourcemanager.projects.get 权限。使用 liens listgcloud 命令。

gcloud alpha resource-manager liens list

以下是该命令的部分示例输出:

gcloud alpha resource-manager liens list
NAME                                                  ORIGIN            REASON
p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7  user@example.com  testing

移除项目中的安全锁

如要从项目中移除安全锁,用户必须拥有 roles/ownerroles/resourcemanager.lienModifier 授予的 resourcemanager.projects.updateLiens 权限。

gcloud alpha resource-manager liens delete [LIEN_NAME]

其中:

  • [LIEN_NAME] 是要删除的安全锁的名称。

参考

API 参考:REST 资源:安全锁