透過防刪除鎖定保護專案

本說明文件可協助專案擁有者機構管理員新增保護機制,以免專案遭刪除。

您可針對專案設定防刪除鎖定以防止專案遭到刪除,直到移除防刪除鎖定為止。此功能有助於保護特別重要的專案。

系統也可能自動對專案設定留置權。舉例來說,如果您允許將某個專案的身分與存取權管理 (IAM) 服務帳戶附加至其他專案的資源,系統就會對服務帳戶所在的專案設定留置權。

事前準備

gcloud CLI 是與專案防刪除鎖定互動的最簡單方式。如果沒有安裝此工具,您可使用 Google Cloud Shell

必要的角色

如要取得修改防刪除鎖定設定所需的權限,請要求管理員授予您專案的專案防刪除鎖定修改者 (roles/resourcemanager.lienModifier) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這個預先定義的角色具備修改留置權所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要修改留置權,您必須具備下列權限:

  • resourcemanager.projects.updateLiens
  • 列出專案的防刪除鎖定: resourcemanager.projects.get

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

設定專案的防刪除鎖定

如要設定專案的防刪除鎖定,請使用 alpha resource-manager liens create 指令。

gcloud alpha resource-manager liens create \
  --project=PROJECT_ID \
  --restrictions=PERMISSION_RESTRICTION \
  --reason=LIEN_REASON \
  --origin=LIEN_ORIGIN

更改下列內容:

  • PROJECT_ID:要套用防刪除鎖定的專案 ID。
  • PERMISSION_RESTRICTION:以逗號分隔的 IAM 權限清單,列出要封鎖的權限。專案的唯一有效限制是 resourcemanager.projects.delete
  • LIEN_REASON:解釋為何需要此防刪除鎖定的易理解說明。請將這段說明放在雙引號內。範例:"This project is protected by a lien"
  • LIEN_ORIGIN:代表產生該防刪除鎖定的使用者或系統的字串。這是必填欄位,但如果省略,系統會自動填入使用者的電子郵件地址。

列出專案的防刪除鎖定

如要列出套用於專案的所有防刪除鎖定,請使用 alpha resource-manager liens list 指令。

gcloud alpha resource-manager liens list

輸出結果會與下列內容相似:

gcloud alpha resource-manager liens list
NAME                                                  ORIGIN            REASON
p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7  [email protected]  testing

移除專案的防刪除鎖定

如要移除專案的留置權,請使用 alpha resource-manager liens delete 指令。

gcloud alpha resource-manager liens delete LIEN_NAME

LIEN_NAME 替換為要刪除的防刪除鎖定名稱,例如 p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7

參考資料

API 參考資料:REST 資源:防刪除鎖定