組織リソースは、Google Cloud リソース階層のルートノードで、プロジェクトの階層的なスーパーノードです。このページでは、組織リソースの取得方法と管理方法について説明します。
準備
組織リソースの概要をお読みください。
組織リソースを取得する
組織リソースは、Google Workspace と Cloud Identity のユーザーが使用できます。
- Google Workspace: Google ワークスペースに登録します。
- Cloud Identity: Cloud Identity に登録します。
Google Workspace アカウントまたは Cloud Identity アカウントを作成し、ドメインに関連付けると、組織リソースが自動的に作成されます。リソースは、アカウントのステータスに応じて異なるタイミングでプロビジョニングされます。
- Google Cloud を初めて使用し、まだプロジェクトを作成していない場合は、Google Cloud Console にログインして利用規約に同意すると、組織リソースが作成されます。
-
既存の Google Cloud ユーザーの場合、新しいプロジェクトまたは請求先アカウントを作成するときに組織リソースが作成されます。以前に作成したプロジェクトは「組織なし」に表示されますが、これは正常な状態です。組織リソースが表示され、作成した新しいプロジェクトが自動的にリンクされます。
「組織なし」で作成したプロジェクトを新しい組織リソースに移行する必要があります。プロジェクトを移行する方法については、プロジェクトを組織リソースに移行するをご覧ください。
作成された組織リソースは、作成したプロジェクトまたは請求先アカウントが子リソースとして設定された Google Workspace アカウントまたは Cloud Identity アカウントにリンクされます。Google Workspace または Cloud Identity のドメインで作成されたすべてのプロジェクトと請求先アカウントは、この組織リソースの子になります。
- 既存のプロジェクトを移行する方法については、既存のプロジェクトを移行するをご覧ください。
Google Workspace アカウントや Cloud Identity アカウントには、それぞれ 1 つの組織リソースが関連付けられます。組織リソースは、組織リソースの作成時に設定された 1 つのドメインのみと関連付けられます。
組織リソースが作成されると、Google Workspace や Cloud Identity の特権管理者にリソースが利用可能になった旨が通知されます。特権管理者アカウントは、組織リソースおよびその下のあらゆるリソースに対して広範な制御を行えるため、慎重に使用する必要があります。このような理由から、組織リソースの日常的な管理のために Google Workspace や Cloud Identity の特権管理者アカウントを使用することはおすすめしません。Google Cloud での Google Workspace または Cloud Identity の特権管理者アカウントの使用について詳しくは、特権管理者のベスト プラクティスをご覧ください。
組織リソースを能動的に取得するには、Google Workspace または Cloud Identity の特権管理者が組織管理者(roles/resourcemanager.organizationAdmin
)の Identity and Access Management(IAM)ロールをユーザーまたはグループに割り当てる必要があります。組織リソースを設定する手順については、組織リソースを設定するをご覧ください。
- 組織を作成すると、ドメインのすべてのユーザーにプロジェクト作成者(
roles/resourcemanager.projectCreator
)と請求先アカウント作成者(roles/billing.creator
)の IAM 役割が組織リソースレベルで付与されます。これにより、ドメインのユーザーはプロジェクトの作成を中断なく継続できます。 - 組織管理者は、組織リソースを本格的に使用し始める時期を決定します。デフォルトの権限を変更し、必要であれば制約の多いポリシーを適用することもできます。
- 組織リソースが利用可能であれば、表示に必要な Cloud IAM 権限がなくとも、プロジェクトと請求先アカウントを作成できます。表示されない場合でも、これらは組織リソースの下に自動的に作成されます。
組織リソース ID を取得する
組織リソース ID は、組織リソースを一意に表す ID で、組織リソースが作成されると自動的に作成されます。組織リソース ID は 10 進数の形式で、ゼロで始まることはありません。
組織リソース ID は、Google Cloud コンソール、gcloud CLI、Cloud Resource Manager API のいずれかを使用して取得できます。
Console
Google Cloud コンソールを使用して組織リソース ID を取得するには、次の手順に従います。
- Google Cloud コンソールに移動します。
- ページの上部にあるプロジェクト選択ツールから、組織リソースを選択します。
- 右側にある [詳細] をクリックし、[設定] をクリックします。
[設定] ページに、組織リソース ID が表示されます。
gcloud
組織リソース ID を調べるには、次のコマンドを実行します。
gcloud organizations list
このコマンドによって、所属するすべての組織リソースと、対応する組織リソース ID を一覧表示します。
API
Cloud Resource Manager API を使用して組織リソース ID を確認するには、organizations.search()
メソッド(ドメインのクエリを含む)を使用します。例:
GET https://cloudresourcemanager.googleapis.com/v3/organizations:search{query=domain:altostrat.com}
レスポンスには、組織リソース ID を含む、altostrat.com
に属する組織リソースのメタデータが含まれます。
組織リソースを設定する
Google Workspace または Cloud Identity のユーザーには、組織リソースが自動的に提供されます。
Google Workspace や Cloud Identity の特権管理者は、作成時に組織リソースにアクセスできる最初のユーザーです。他のすべてのユーザーやグループは、以前と同様、Google Cloud を使用できます。組織リソースの表示はできますが、適切な権限が設定されるまで、組織リソースの変更はできません。
Google Workspace や Cloud Identity の特権管理者と Google Cloud 組織管理者は、設定プロセスと組織リソースのライフサイクル管理における重要なロールです。組織リソースの構造やニーズによっても変わりますが、通常、この 2 つのロールは別々のユーザーまたはグループに割り当てられます。
Google Cloud 組織リソースの設定における Google Workspace または Cloud Identity の特権管理者の責任は次のとおりです。
- 一部のユーザーに組織管理者のロールを割り当てる
- 復旧に関する連絡窓口になる
- Google Workspace や Cloud Identity のアカウントと組織リソースのライフサイクルを管理する(詳しくは、組織リソースを削除するをご覧ください)。
組織管理者に割り当てられると、Identity and Access Management ロールを他のユーザーに割り当てることができます。組織管理者ロールの責任は、次のとおりです。
- IAM ポリシーを定義し、他のユーザーに IAM ロールを付与する。
- リソース階層の構造を確認する。
最小権限の原則に従い、このロールにはフォルダまたはプロジェクトの作成など、その他のアクションを実行するための権限が付与されていません。これらの権限を取得するには、組織管理者がアカウントに追加のロールを割り当てる必要があります。
2 つの別々のロールを用意することで、Google Workspace 特権管理者または Cloud Identity 特権管理者と Google Cloud 組織管理者の責任範囲を明確に分離できます。2 つの Google サービスを顧客の組織の異なる部門で管理する場合、この機能が必須になります。
組織リソースの使用を開始するには、以下の手順に沿って組織管理者を追加します。
組織管理者を追加する
コンソール
組織管理者を追加するには:
Google Workspace または Cloud Identity の特権管理者として Google Cloud コンソールにログインし、[IAM と管理] ページに移動します。
編集する組織リソースを選択します。
ページの上部にあるプロジェクトのプルダウン リストをクリックします。
[選択元] ダイアログで組織プルダウン リストをクリックし、組織管理者を追加する組織リソースを選択します。
表示されたリストで組織リソースをクリックして、IAM 権限ページを開きます。
[追加] をクリックして、組織管理者として設定するユーザー(複数も可)のメールアドレスを入力します。
[ロールを選択] プルダウン リストで、[Resource Manager] > [組織管理者] を選択し、[保存] をクリックします。
組織管理者は次の操作を実行できます。
組織リソースを完全に管理する。Google Workspace または Cloud Identity の特権管理者と Google Cloud 管理者の責任範囲を分離する。
関連する IAM ロールを割り当てることで、重要な機能に対する権限を委譲する。
組織リソースを取得するで説明したように、デフォルトでは、組織の作成時にドメインのすべてのユーザーにプロジェクト作成者と請求先アカウント作成者の役割が組織リソースレベルで付与されます。これにより、組織リソースを作成しても Google Cloud ユーザーの作業が中断されることはありません。組織管理者が管理を行うため、これらの組織レベルの権限を削除し、より細かい単位(例: フォルダまたはプロジェクト レベル)でアクセスをロックダウンできます。IAM ポリシーは階層で継承されます。ドメイン全体(domain:mycompany.com
)に組織リソースレベルでポリシー作成者のロールを割り当てると、ドメイン内のすべてのユーザーが階層内の任意の場所でプロジェクトを作成できます。
組織リソース内にプロジェクトを作成する
コンソール
ドメインで組織リソースが有効になると、Google Cloud コンソールを使用して組織リソース内にプロジェクトを作成できます。
組織リソースで新しいプロジェクトを作成するには:
新しいプロジェクトを作成するには、次の手順を行います。
-
Google Cloud コンソールの [リソースの管理] ページに移動します。
残りの手順は、Google Cloud コンソールに表示されます。
- ページの上部にある [組織の選択] プルダウン リストで、プロジェクトを作成する組織リソースを選択します。無料トライアルをご使用の場合はこのリストが表示されないため、この手順はスキップしてください。
- [プロジェクトを作成] をクリックします。
- 表示される [新しいプロジェクト] ウィンドウで、プロジェクト名を入力し、該当する請求先アカウントを選択します。プロジェクト名には文字、数字、単一引用符、ハイフン、スペース、感嘆符のみを使用でき、4~30 文字にする必要があります。
- [場所] ボックスに親組織またはフォルダ リソースを入力します。このリソースが新しいプロジェクトの階層上の親になります。[組織なし] を選択した場合は、そのプロジェクトを選択して、独自のリソース階層の最上位として新しいプロジェクトを作成できます。
- 新しいプロジェクトの詳細を入力し終えたら、[作成] をクリックします。
API
組織リソース内に新しいプロジェクトを作成するには、project
を作成し、parent
フィールドを組織リソースの organizationId
に設定します。
次のコード スニペットは、組織リソース内でプロジェクトを作成する方法を示します。
...
project = crm.projects().create(
body={
'project_id': flags.projectId,
'name': 'My New Project',
'parent': {
'type': 'organization',
'id': flags.organizationId
}
}).execute()
...
組織リソース内のプロジェクトを表示する
ユーザーが表示または一覧表示できるのは、IAM ロールでアクセスが許可されているプロジェクトだけです。組織管理者は、組織リソース内のすべてのプロジェクトを表示または一覧表示できます。
コンソール
Google Cloud コンソールを使用して組織リソース内のすべてのプロジェクトを表示するには:
Google Cloud コンソールに移動します。
ページの上部にある [組織] をクリックします。
組織リソースを選択します。
ページの上部にある [プロジェクト] をクリックし、[プロジェクトをさらに表示] をクリックします。組織リソースに含まれるすべてのプロジェクトがそのページに表示されます。
[組織] で [組織なし] オプションを指定すると、次のプロジェクトがリスト表示されます。
- まだ組織リソースに属していないプロジェクト。
- ユーザーがアクセスできるプロジェクトのうち、ユーザーがアクセスできない組織リソースに属しているプロジェクト。
gcloud
組織リソースに含まれるすべてのプロジェクトを表示するには、次のコマンドを実行します。
gcloud projects list --filter 'parent.id=[ORGANIZATION_ID] AND \
parent.type=organization'
API
親リソースのすべてのプロジェクトを一覧表示するには、次のコード スニペットのように projects.list()
メソッドを使用します。
...
filter = 'parent.type:organization parent.id:%s' % flags.organizationId
projects = crm.projects().list(filter=filter).execute()
...
組織リソースを削除する
組織リソースは、Google Workspace アカウントまたは Cloud Identity アカウントに関連付けられています。
組織リソースを使用しない場合は、次の手順で、組織リソースの IAM ポリシーを元の状態に戻すことをおすすめします。
- ドメインを
Project Creator
とBilling Account Creator
の役割に追加します。 - 組織リソースの IAM ポリシーで、それ以外の項目をすべて削除します。
これにより、ユーザーがプロジェクトと請求先アカウントを作成しても、Google Workspace や Cloud Identity の特権管理者が後で一元的に管理できます。
Google Workspace アカウントを削除すると、組織リソースとそのアカウントに関連付けられているすべてのリソースが削除されます。そのため、組織リソースを削除する場合は、Google Workspace アカウントを削除してください。Cloud Identity ユーザーの場合は、他の Google サービスをすべてキャンセルしてから Google アカウントを削除してください。これは、完全に元に戻すことができない可能性がある非常にダメージの大きなアクションであるため、アクティブに使用されているリソースがないことが確実な場合にのみ行うことをおすすめします。
使ってみる
Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
無料で開始