制約の詳細と、制約によって解決される問題については、すべての組織ポリシー サービスの制約のリストをご覧ください。
始める前に
組織ポリシーの仕組みについては、組織ポリシー サービスの概要ページをご覧ください。
制約の作成方法については、制約についてをご覧ください。
ポリシーの継承については、階層評価についてをご覧ください。
必要なロール
組織のポリシーを管理するために必要な権限を取得するには、組織に対する組織ポリシー管理者(roles/orgpolicy.policyAdmin
)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与の詳細については、アクセス権の管理をご覧ください。
この事前定義ロールには、組織のポリシーを管理するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
組織のポリシーを管理するには、次の権限が必要です。
-
orgpolicy.constraints.list
-
orgpolicy.policies.create
-
orgpolicy.policies.delete
-
orgpolicy.policies.list
-
orgpolicy.policies.update
-
orgpolicy.policy.get
-
orgpolicy.policy.set
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
組織のポリシーとともにリスト制約を使用する
組織リソースに対する適用を設定する
リスト型制約を使用する組織ポリシーを組織リソースに対して設定することにより、特定のサービスへのアクセスを拒否することができます。次のプロセスでは、Google Cloud CLI を使用して組織のポリシーを設定する方法について説明します。Google Cloud コンソールを使用して組織のポリシーを表示および設定する方法については、ポリシーの作成と管理をご覧ください。
リスト型制約を使用する組織ポリシーでは、許可または拒否する値を 500 個以下、32 KB 以下にする必要があります。組織ポリシーの作成や更新で 500 個を超える値や 32 KB を超えるサイズがある場合は、組織のポリシーが正常に保存されず、リクエストからエラーが返されます。
v2 API
describe
コマンドを使用して、組織リソースに関する現在のポリシーを取得します。このコマンドを実行すると、このリソースに直接適用されたポリシーが返されます。gcloud org-policies describe \ LIST_CONSTRAINT --organization=ORGANIZATION_ID
次のように置き換えます。
ORGANIZATION_ID
: 組織リソースの固有識別子。組織 ID は 10 進数で表示され、先頭にゼロを付けることはできません。LIST_CONSTRAINT
: サービスに対して適用するリスト型制約。
さらに、
--folder
フラグまたは--project
フラグ、フォルダ ID、プロジェクト ID をそれぞれ使用して、フォルダやプロジェクトに対して組織のポリシーを適用することもできます。現在の組織ポリシーがある場合は、レスポンスで返されます。例:
name: projects/841166443394/policies/gcp.resourceLocations spec: etag: BwW5P5cEOGs= inheritFromParent: true rules: - condition: expression: resource.matchTagId("tagKeys/1111", "tagValues/2222") values: allowedValues: - in:us-east1-locations - condition: expression: resource.matchTag("123/env", "prod") values: allowedValues: - in:us-west1-locations - values: deniedValues: - in:asia-south1-locations updateTime: '2021-01-19T12:00:51.095Z'
ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
set-policy
コマンドを使用して、組織に対するポリシーを設定します。これにより、リソースに現在接続されているポリシーがすべて上書きされます。ポリシーを保存する一時ファイル
/tmp/policy.yaml
を作成します。name: organizations/ORGANIZATION_ID/policies/LIST_CONSTRAINT spec: rules: - values: deniedValues: - VALUE_A
set-policy
コマンドを実行します。gcloud org-policies set-policy /tmp/policy.yaml
describe --effective
を使用して現在有効なポリシーを表示します。これにより、リソース階層において現段階で継承が可能と評価された組織のポリシーが返されます。gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --organization=ORGANIZATION_ID
コマンドの出力は次のようになります。
name: organizations/ORGANIZATION_ID/policies/LIST_CONSTRAINT spec: etag: BwVJi0OOESU= rules: - values: deniedValues: - VALUE_A
この組織ポリシーは組織レベルで設定されているため、継承が許可されているすべての子リソースで継承されます。
v1 API
describe
コマンドを使用して、組織リソースに関する現在のポリシーを取得します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --organization ORGANIZATION_ID
ここで
ORGANIZATION_ID は、組織リソースの一意の識別子です。組織 IDは 10 進数で表示され、先頭にゼロを付けることはできません。
LIST_CONSTRAINT は、サービスに対して適用するリスト型制約です。
さらに、
--folder
フラグまたは--project
フラグ、フォルダ ID、プロジェクト ID をそれぞれ使用して、フォルダやプロジェクトに対して組織のポリシーを適用することもできます。ポリシーが設定されていないため、次の例のように、不完全なポリシーが返されます。
constraint: "constraints/LIST_CONSTRAINT" etag: BwVJi0OOESU=
アクセスを制限するサービスに対して拒否された値を追加するには、
deny
コマンドを使用します。gcloud resource-manager org-policies deny \ LIST_CONSTRAINT VALUE_A \ --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT etag: BwVJi0OOESU= listPolicy: deniedValues: - VALUE_A updateTime: CURRENT_TIME
describe --effective
を使用して現在有効なポリシーを表示します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT listPolicy: deniedValues: - VALUE_A
この組織ポリシーは組織レベルで設定されているため、継承が許可されているすべての子リソースで継承されます。
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
階層サブツリーに対して適用を設定する
リスト制約では、明示的に定義された値を使用して、どのリソースを許可または拒否するかを決定します。一部の制約も、接頭辞 under:
を使用する値を受け入れることができます。この接頭辞は、そのリソースをルートとするサブツリーを指定します。許可または拒否される値に under:
接頭辞を使用すると、そのリソースとそのすべての子に組織のポリシーが適用されます。接頭辞 under:
の使用を許可する制約については、組織のポリシーの制約ページをご覧ください。
under:
接頭辞を使用する値は、階層サブツリー文字列と呼ばれます。階層サブツリー文字列は、適用先のリソースのタイプを指定します。たとえば、constraints/compute.storageResourceUseRestrictions
制約を設定するときに projects/PROJECT_ID
のサブツリー文字列を使用すると、PROJECT_ID
とそのすべての子に対する Compute Engine ストレージの使用が許可または拒否されます。
v2 API
describe
コマンドを使用して、組織リソースに関する現在のポリシーを取得します。gcloud org-policies describe \ LIST_CONSTRAINT \ --organization=ORGANIZATION_ID
次のように置き換えます。
ORGANIZATION_ID
は、組織リソースの一意の識別子です。LIST_CONSTRAINT
は、サービスに対して適用するリスト型制約です。
さらに、
--folder
フラグまたは--project
フラグ、フォルダ ID、プロジェクト ID をそれぞれ使用して、フォルダやプロジェクトに対して組織のポリシーを適用することもできます。ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
set-policy
コマンドを使用して、プロジェクトにポリシーを設定します。under:
接頭辞は、指定されたリソースとそのすべての子リソースを拒否する制約を設定します。ポリシーを保存する一時ファイル
/tmp/policy.yaml
を作成します。name: organizations/ORGANIZATION_ID/policies/LIST_CONSTRAINT spec: rules: - values: deniedValues: - under:folders/VALUE_A
set-policy
コマンドを実行します。gcloud org-policies set-policy /tmp/policy.yaml
ここで
under:
は、後続するものがサブツリー文字列であることを表す接頭辞です。folders/VALUE_A
は、拒否するルートリソースのフォルダ ID です。リソース階層内のこのリソースおよびそのすべての子リソースが拒否されます。
また、次の例のように、組織とプロジェクトに
under:
接頭辞を適用することもできます。under:organizations/VALUE_X
under:projects/VALUE_Y
describe --effective
を使用して現在有効なポリシーを表示します。gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --organization=ORGANIZATION_ID
コマンドの出力は次のようになります。
name: organizations/ORGANIZATION_ID/policies/LIST_CONSTRAINT spec: rules: - values: deniedValues: - under:folders/VALUE_A
これでポリシーは、フォルダ VALUE_A とそのすべての子リソースを拒否するように評価します。
v1 API
describe
コマンドを使用して、組織リソースに関する現在のポリシーを取得します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --organization ORGANIZATION_ID
ここで
ORGANIZATION_ID は、組織リソースの一意の識別子です。
LIST_CONSTRAINT は、サービスに対して適用するリスト型制約です。
さらに、
--folder
フラグまたは--project
フラグ、フォルダ ID、プロジェクト ID をそれぞれ使用して、フォルダやプロジェクトに対して組織のポリシーを適用することもできます。ポリシーが設定されていないため、次の例のように、不完全なポリシーが返されます。
constraint: "constraints/LIST_CONSTRAINT" etag: BwVJi0OOESU=
アクセスを制限するサービスに対して拒否された値を追加するには、
deny
コマンドを使用します。under:
接頭辞は、指定されたリソースとそのすべての子リソースを拒否する制約を設定します。gcloud resource-manager org-policies deny \ LIST_CONSTRAINT under:folders/VALUE_A \ --organization ORGANIZATION_ID
ここで
under: は、後続するものがサブツリー文字列であることを表す接頭辞です。
folders/VALUE_A は、拒否するルートリソースのフォルダ ID です。リソース階層内のこのリソースおよびそのすべての子リソースが拒否されます。
VALUE_B と VALUE_C は階層内に存在するプロジェクトで、VALUE_A がその親です。
deny コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT etag: BwVJi0OOESU= listPolicy: deniedValues: - under:folders/VALUE_A updateTime: CURRENT_TIME
また、次の例のように、組織とプロジェクトに
under:
接頭辞を適用することもできます。under:organizations/VALUE_X
under:projects/VALUE_Y
describe --effective
を使用して現在有効なポリシーを表示します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT listPolicy: deniedValues: - under:folders/VALUE_A
このポリシーでは、フォルダ VALUE_A とそのすべての子リソース(この場合は VALUE_B と VALUE_C)を拒否するように評価します。
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
プロジェクトの組織ポリシーを結合する
リソースには組織のポリシーを設定できます。このポリシーは、親リソースから継承したポリシーと結合されます。この結合されたポリシーは、継承のルールに基づいて、新しい有効なポリシーを作成するものと評価されます。
v2 API
describe
コマンドで、リソースに対する現在のポリシーを取得します。gcloud org-policies describe \ LIST_CONSTRAINT \ --project=PROJECT_ID
次のように置き換えます。
PROJECT_ID
: プロジェクトの固有識別子。LIST_CONSTRAINT
: サービスに対して適用するリスト型制約。
ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
現在の有効なポリシーを表示するには、
describe --effective
コマンドを使用します。gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --project=PROJECT_ID
コマンドの出力には、組織リソースから継承された、拒否する値が含まれます。
name: projects/PROJECT_ID/policies/LIST_CONSTRAINT spec: rules: - values: deniedValues: - VALUE_A
set-policy
コマンドを使用して、プロジェクトにポリシーを設定します。ポリシーを保存する一時ファイル
/tmp/policy.yaml
を作成します。name: projects/PROJECT_ID/policies/LIST_CONSTRAINT spec: inheritFromParent: true rules: - values: deniedValues: - VALUE_B - VALUE_C
set-policy
コマンドを実行します。gcloud org-policies set-policy /tmp/policy.yaml
describe --effective
コマンドをもう一度使用して、更新されたポリシーを表示します。gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --project=PROJECT_ID
コマンドの出力には、リソースのポリシーと親のポリシーを結合した実際の結果が含まれます。
name: projects/PROJECT_ID/policies/LIST_CONSTRAINT spec: rules: - values: deniedValues: - VALUE_A - VALUE_B - VALUE_C
v1 API
describe
コマンドで、リソースに対する現在のポリシーを取得します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --project PROJECT_ID
ここで
PROJECT_ID はプロジェクトの一意の識別子です。
LIST_CONSTRAINT は、サービスに対して適用するリスト型制約です。
ポリシーが設定されていないため、次の例のように、不完全なポリシーが返されます。
constraint: "constraints/LIST_CONSTRAINT" etag: BwVJi0OOESU=
現在の有効なポリシーを表示するには、
describe --effective
コマンドを使用します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --project PROJECT_ID
コマンドの出力には、組織リソースから継承された、拒否する値が含まれます。
constraint: constraints/LIST_CONSTRAINT listPolicy: deniedValues: - VALUE_A
set-policy
コマンドを使用して、プロジェクトにポリシーを設定します。ポリシーを保存する一時ファイル
/tmp/policy.yaml
を作成します。constraint: constraints/LIST_CONSTRAINT listPolicy: deniedValues: - VALUE_B - VALUE_C inheritFromParent: true
set-policy
コマンドを実行します。gcloud resource-manager org-policies set-policy \ --project PROJECT_ID /tmp/policy.yaml
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT etag: BwVLO2timxY= listPolicy: deniedValues: - VALUE_B - VALUE_C inheritFromParent: true
describe --effective
コマンドをもう一度使用して、更新されたポリシーを表示します。gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --project PROJECT_ID
コマンドの出力には、リソースのポリシーと親のポリシーを結合した実際の結果が含まれます。
constraint: constraints/LIST_CONSTRAINT listPolicy: deniedValues: - VALUE_A - VALUE_B - VALUE_C
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
デフォルトの制約動作を復元する
reset
コマンドを使用して、制約のデフォルトの動作が使用されるようにポリシーをリセットできます。使用可能なすべての制約とデフォルト値のリストについては、組織のポリシーの制約をご覧ください。次の例では、デフォルトの制約の動作が、すべての値を許可することであることを前提としています。
v2 API
プロジェクトに実際に適用されているポリシーを取得して、現在結合されているポリシーを表示します。
gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --project=PROJECT_ID
PROJECT_ID は、プロジェクトの固有識別子に置き換えます。コマンドの出力は次のようになります。
name: projects/PROJECT_ID/policies/LIST_CONSTRAINT spec: rules: - values: deniedValues: - VALUE_A - VALUE_B - VALUE_C
reset
コマンドを使用して、組織のポリシーをリセットします。gcloud org-policies reset LIST_CONSTRAINT \ --project=PROJECT_ID
有効なポリシーを取得して、デフォルトの動作を確認します。
gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --project=PROJECT_ID
コマンドの出力では、すべての値が許可されています。
name: projects/PROJECT_ID/policies/LIST_CONSTRAINT spec: rules: - allowAll: true
v1 API
プロジェクトに実際に適用されているポリシーを取得して、現在結合されているポリシーを表示します。
gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --project PROJECT_ID
PROJECT_ID は、プロジェクトの固有識別子に置き換えます。コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT listPolicy: deniedValues: - VALUE_A - VALUE_B - VALUE_C
set-policy
コマンドを使用して、プロジェクトにポリシーを設定します。ポリシーを保存する一時ファイル
/tmp/restore-policy.yaml
を作成します。restoreDefault: {} constraint: constraints/LIST_CONSTRAINT
set-policy
コマンドを実行します。gcloud resource-manager org-policies set-policy \ --project PROJECT_ID /tmp/restore-policy.yaml
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT etag: BwVJi9D3VLY= restoreDefault: {}
有効なポリシーを取得して、デフォルトの動作を確認します。
gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --project PROJECT_ID
コマンドの出力では、すべての値が許可されています。
Constraint: constraints/LIST_CONSTRAINT listPolicy: allValues: ALLOW
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織ポリシーを削除する
リソースから、組織ポリシーを削除することができます。組織ポリシーが設定されていないリソースは、親リソースのポリシーを継承します。組織リソース上の組織ポリシーを削除すると、制約のデフォルト動作が有効なポリシーとなります。
組織の組織のポリシーを削除する手順は以下のとおりです。
v2 API
delete
コマンドを使用して、組織リソースに対するポリシーを削除します。gcloud org-policies delete \ LIST_CONSTRAINT \ --organization=ORGANIZATION_ID
ORGANIZATION_ID は、組織リソースの固有識別子に置き換えます。コマンドの出力は次のようになります。
Deleted policy [organizations/ORGANIZATION_ID/policies/LIST_CONSTRAINT]. {}
組織で有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --organization=ORGANIZATION_ID
コマンドの出力は次のようになります。
name: organizations/ORGANIZATION_ID/policies/LIST_CONSTRAINT spec: rules: - allowAll: true
プロジェクトの組織のポリシーを削除する手順は以下のとおりです。
delete
コマンドを使用して、プロジェクトからポリシーを削除します。gcloud org-policies delete \ LIST_CONSTRAINT \ --project=PROJECT_ID
PROJECT_ID
はプロジェクトの一意の識別子です。コマンドの出力は次のようになります。Deleted policy [projects/PROJECT_ID/policies/LIST_CONSTRAINT]. {}
プロジェクトで有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud org-policies describe \ LIST_CONSTRAINT --effective \ --project=PROJECT_ID
コマンドの出力は次のようになります。
name: projects/PROJECT_ID/policies/LIST_CONSTRAINT spec: rules: - allowAll: true
v1 API
delete
コマンドを使用して、組織リソース対するポリシーを削除します。gcloud resource-manager org-policies delete \ LIST_CONSTRAINT --organization ORGANIZATION_ID
ORGANIZATION_ID は、組織リソースの一意の識別子です。コマンドの出力は次のようになります。
Deleted [<Empty>].
組織で有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud resource-manager org-policies describe \ LIST_CONSTRAINT --effective \ --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT listPolicy: allValues: ALLOW
プロジェクトの組織のポリシーを削除する手順は以下のとおりです。
delete
コマンドを使用して、プロジェクトからポリシーを削除します。gcloud resource-manager org-policies delete \ LIST_CONSTRAINT --project PROJECT_ID
PROJECT_ID はプロジェクトの一意の識別子です。コマンドの出力は次のようになります。
Deleted [<Empty>].
プロジェクトで有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud resource-manager org-policies describe \ --effective \ LIST_CONSTRAINT --project PROJECT_ID
コマンドの出力は次のようになります。
constraint: constraints/LIST_CONSTRAINT listPolicy: allValues: ALLOW
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織ポリシーにブール型制約を使用する
組織リソースに対する適用を設定する
組織リソースに対してブール型の制約を適用する組織ポリシーを設定することができます。次のプロセスでは、Google Cloud CLI を使用して組織のポリシーを設定する方法について説明します。Google Cloud コンソールを使用して組織のポリシーを表示および設定する方法については、ポリシーの作成と管理をご覧ください。
v2 API
describe
コマンドを使用して、組織リソースに関する現在のポリシーを取得します。gcloud org-policies describe \ BOOLEAN_CONSTRAINT \ --organization=ORGANIZATION_ID
ORGANIZATION_ID
は、組織リソースの固有識別子に置き換えます。さらに、--folder
フラグまたは--project
フラグ、フォルダ ID、プロジェクト ID をそれぞれ使用して、フォルダやプロジェクトに対して組織のポリシーを適用することもできます。ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
set-policy
コマンドを使用して、プロジェクトにポリシーを設定します。ポリシーを保存する一時ファイル
/tmp/policy.yaml
を作成します。name: organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT spec: rules: - enforce: true
set-policy
コマンドを実行します。gcloud org-policies set-policy /tmp/policy.yaml
describe --effective
を使用して現在の有効なポリシーを表示します。gcloud org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --organization=ORGANIZATION_ID
コマンドの出力は次のようになります。
name: organizations/ORGANIZATION_ID/policies/BOOLEAN_POLICY spec: rules: - enforce: true
v1 API
describe
コマンドを使用して、組織リソースに関する現在のポリシーを取得します。gcloud resource-manager org-policies describe \ BOOLEAN_CONSTRAINT --organization ORGANIZATION_ID
ORGANIZATION_ID は、組織リソースの一意の識別子です。さらに、
--folder
フラグまたは--project
フラグ、フォルダ ID、プロジェクト ID をそれぞれ使用して、フォルダやプロジェクトに対して組織のポリシーを適用することもできます。ポリシーが設定されていないため、次の例のように、不完全なポリシーが返されます。
booleanPolicy: {} constraint: "constraints/BOOLEAN_CONSTRAINT"
enable-enforce
コマンドを使用して、組織に適用するポリシーを設定します。gcloud resource-manager org-policies enable-enforce \ BOOLEAN_CONSTRAINT --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
booleanPolicy: enforced: true constraint: constraints/BOOLEAN_CONSTRAINT etag: BwVJitxdiwY=
describe --effective
を使用して現在の有効なポリシーを表示します。gcloud resource-manager org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
booleanPolicy: enforced: true constraint: constraints/BOOLEAN_CONSTRAINT
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
プロジェクトの組織ポリシーをオーバーライドする
プロジェクトの組織ポリシーをオーバーライドするには、プロジェクトの下の階層にあるすべてのリソースに対してブール型制約の適用を無効にするポリシーを設定します。
v2 API
リソースの現在のポリシーを取得し、このポリシーが空であることを確認します。
gcloud org-policies describe \ BOOLEAN_CONSTRAINT \ --project=PROJECT_ID
ここで、
PROJECT_ID
はプロジェクトの固有識別子です。ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
プロジェクトで有効なポリシーを取得します。制約がこのプロジェクトに適用されていることがわかります。
gcloud org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --project=PROJECT_ID
コマンドの出力は次のようになります。
name: projects/PROJECT_ID/policies/BOOLEAN_POLICY spec: rules: - enforce: true
set-policy
コマンドを使用して、プロジェクトにポリシーを設定します。ポリシーを保存する一時ファイル
/tmp/policy.yaml
を作成します。name: projects/PROJECT_ID/policies/BOOLEAN_CONSTRAINT spec: rules: - enforce: false
set-policy
コマンドを実行します。gcloud org-policies set-policy /tmp/policy.yaml
有効なポリシーを取得して、ポリシーがプロジェクトに適用されていないことを確認します。
gcloud org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --project=PROJECT_ID
コマンドの出力は次のようになります。
name: organizations/ORGANIZATION_ID/policies/BOOLEAN_POLICY spec: rules: - enforce: false
v1 API
リソースの現在のポリシーを取得し、このポリシーが空であることを確認します。
gcloud resource-manager org-policies describe \ BOOLEAN_CONSTRAINT --project PROJECT_ID
PROJECT_ID はプロジェクトの一意の識別子です。コマンドの出力は次のようになります。
booleanPolicy: {} constraint: "constraints/BOOLEAN_CONSTRAINT"
プロジェクトで有効なポリシーを取得します。制約がこのプロジェクトに適用されていることがわかります。
gcloud resource-manager org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --project PROJECT_ID
コマンドの出力は次のようになります。
booleanPolicy: enforced: true constraint: constraints/BOOLEAN_CONSTRAINT
disable-enforce
コマンドを使用して、プロジェクトに制約を適用しないようにポリシーを設定します。gcloud resource-manager org-policies disable-enforce \ BOOLEAN_CONSTRAINT --project PROJECT_ID
コマンドの出力は次のようになります。
booleanPolicy: {} constraint: constraints/BOOLEAN_CONSTRAINT etag: BwVJivdnXvM=
有効なポリシーを取得して、ポリシーがプロジェクトに適用されていないことを確認します。
gcloud resource-manager org-policies describe \ --effective \ BOOLEAN_CONSTRAINT --project PROJECT_ID
コマンドの出力は次のようになります。
booleanPolicy: {} constraint: constraints/BOOLEAN_CONSTRAINT
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織ポリシーを削除する
リソースから、組織ポリシーを削除することができます。組織ポリシーが設定されていないリソースは、親リソースのポリシーを継承します。組織リソース上の組織ポリシーを削除すると、制約のデフォルト動作が有効なポリシーとなります。
組織とプロジェクトの組織のポリシーを削除する手順は以下のとおりです。
v2 API
delete
コマンドを使用して、組織リソースからポリシーを削除します。gcloud org-policies delete \ BOOLEAN_CONSTRAINT \ --organization=ORGANIZATION_ID
ORGANIZATION_ID
は、組織リソースの固有識別子に置き換えます。コマンドの出力は次のようになります。Deleted policy [organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT]. {}
組織で有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --organization=ORGANIZATION_ID
ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
delete
コマンドを使用して、プロジェクトから組織のポリシーを削除します。gcloud org-policies delete \ BOOLEAN_CONSTRAINT \ --project=PROJECT_ID
コマンドの出力は次のようになります。
Deleted policy [organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT]. {}
プロジェクトで有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --project=PROJECT_ID
PROJECT_ID
は、組織の固有識別子に置き換えます。ポリシーが設定されていない場合は、次のような
NOT_FOUND
エラーが返されます。ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
v1 API
delete
コマンドを使用して、組織リソースからポリシーを削除します。gcloud resource-manager org-policies delete \ BOOLEAN_CONSTRAINT --organization ORGANIZATION_ID
ORGANIZATION_ID は、組織リソースの一意の識別子です。コマンドの出力は次のようになります。
Deleted [<Empty>].
組織で有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud resource-manager org-policies describe \ --effective \ BOOLEAN_CONSTRAINT --organization ORGANIZATION_ID
コマンドの出力は次のようになります。
booleanPolicy: {} constraint: constraints/BOOLEAN_CONSTRAINT
delete
コマンドを使用して、プロジェクトから組織のポリシーを削除します。gcloud resource-manager org-policies delete \ BOOLEAN_CONSTRAINT --project PROJECT_ID
コマンドの出力は次のようになります。
Deleted [<Empty>].
プロジェクトで有効なポリシーを取得し、ポリシーが適用されていないことを確認します。
gcloud resource-manager org-policies describe \ BOOLEAN_CONSTRAINT --effective \ --project PROJECT_ID
PROJECT_ID は、プロジェクトの一意の識別子です。コマンドの出力は次のようになります。
booleanPolicy: {} constraint: constraints/BOOLEAN_CONSTRAINT
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。