リーエンによるプロジェクトの保護

このドキュメントは、プロジェクトの削除に対する保護を追加しようと考えているプロジェクト オーナー組織管理者を対象としています。

プロジェクトにリーエンを適用すると、リーエンを削除するまでプロジェクトを削除できなくなります。これは、重要なプロジェクトを保護する場合に役立ちます。

また、リーエンは、プロジェクトに自動的に配置することもできます。たとえば、あるプロジェクトの Identity and Access Management(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_NAME]
  --restrictions=[PERMISSION_RESTRICTION] \
  --reason=[LIEN_REASON]
  --origin=[LIEN_ORIGIN]

以下を置き換えます。

  • [PROJECT_NAME]: リーエンを適用するプロジェクトの名前。
  • [PERMISSION_RESTRICTION]: ブロックする IAM 権限のカンマ区切りリスト。プロジェクトに有効な制限は resourcemanager.projects.delete のみです。
  • [LIEN_REASON]: リーエンの存在理由に関する説明(人が読める形式)。
  • [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  user@example.com  testing

リーエンをプロジェクトから削除する

リーエンをプロジェクトから削除するには、alpha resource-manager liens delete コマンドを使用します。

gcloud alpha resource-manager liens delete [LIEN_NAME]

[LIEN_NAME] は、削除するリーエンの名前に置き換えます(例: liens/p1061081023732-l3d8032b3-ea2c-4683-ad48-5ca23ddd00e7)。

リファレンス

API リファレンス: REST リソース: リーエン