このガイドでは、特定の制約を使用して組織ポリシーを作成する方法について説明します。 このページの例で使用されている制約は、実際の制約ではなく、教育目的のために一般化されたサンプルです。
制約の詳細と、制約によって解決される問題については、すべての組織ポリシー サービスの制約のリストをご覧ください。
始める前に
- 組織のポリシーの仕組みについては、組織のポリシー サービスの概要ページをご覧ください。 
- ポリシーの継承については、階層評価についてをご覧ください。 
必要なロール
    
      組織のポリシーを管理するために必要な権限を取得するには、組織に対する組織のポリシー管理者(roles/orgpolicy.policyAdmin)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
組織のポリシー管理を委任する
組織のポリシーの管理を別のプリンシパルに委任するには、ロール バインディングに条件を追加します。
"bindings": [ { "role": "roles/orgpolicy.policyAdmin", "members": [ "PRINCIPAL_1", "PRINCIPAL_2" ], "condition": { "title": "TITLE", "description": "DESCRIPTION", "expression": "resource.matchTag('TAG_KEY', 'TAG_VALUE')" } } ]
次のように置き換えます。
- PRINCIPAL_1,PRINCIPAL_2: 組織のポリシー管理者ロールを委任するプリンシパルのリスト。
- TITLE: 条件式のタイトル(例: 「開発環境の組織のポリシー管理者」)。
- DESCRIPTION: 式の説明(省略可)。
- TAG_KEY: タグキーの名前空間名(例:- 123456789012/environment)。
- TAG_VALUE: タグ値の名前。このロールは、このタグが適用されているリソース(- developmentなど)にのみ付与されます。
許可ポリシーで条件を使用する方法の詳細については、IAM 条件の概要をご覧ください。
組織のポリシーでリストルールを使用する
リストルールを使用する組織ポリシーを組織リソースに対して設定することにより、特定のサービスへのアクセスを拒否することができます。次のプロセスでは、Google Cloud CLI を使用して組織のポリシーを設定する方法について説明します。 Google Cloud コンソールを使用して組織のポリシーを表示および設定する方法については、ポリシーの作成と管理をご覧ください。
リストルールを使用する組織のポリシーでは、許可または拒否する値を 500 個以下、32 KB 以下にする必要があります。組織ポリシーの作成や更新で 500 個を超える値や 32 KB を超えるサイズがある場合は、組織のポリシーが正常に保存されず、リクエストからエラーが返されます。
組織リソースに対する適用を設定する
gcloud CLI を使用して組織に適用を設定する手順は次のとおりです。
- describeコマンドを使用して、組織リソースに関する現在のポリシーを取得します。このコマンドを実行すると、このリソースに直接適用されたポリシーが返されます。- gcloud org-policies describe \ CONSTRAINT_NAME --organization=ORGANIZATION_ID- 以下のように置き換えます。 - ORGANIZATION_ID: 組織リソースの固有識別子。組織 ID は 10 進数で表示され、先頭にゼロを付けることはできません。
- CONSTRAINT_NAME: サービスに対して適用する制約。たとえば、- gcp.restrictNonCmekServices制約は、顧客管理の暗号鍵(CMEK)を使用せずにリソースを作成できるサービスを制限します。
 - さらに、 - --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/CONSTRAINT_NAME spec: rules: - values: deniedValues: - VALUE_A
- set-policyコマンドを実行します。- gcloud org-policies set-policy /tmp/policy.yaml
 
- describe --effectiveを使用して現在有効なポリシーを表示します。これにより、リソース階層において現段階で継承が可能と評価された組織のポリシーが返されます。- gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --organization=ORGANIZATION_ID- コマンドの出力は次のようになります。 - name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME spec: etag: BwVJi0OOESU= rules: - values: deniedValues: - VALUE_A- この組織ポリシーは組織レベルで設定されているため、継承が許可されているすべての子リソースで継承されます。 
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
階層サブツリーに対して適用を設定する
リストルールの制約では、明示的に定義された値を使用して、どのリソースを許可または拒否するかを決定します。一部の制約も、接頭辞 under: を使用する値を受け入れることができます。この接頭辞は、そのリソースをルートとするサブツリーを指定します。許可または拒否される値に under: 接頭辞を使用すると、そのリソースとそのすべての子に組織のポリシーが適用されます。接頭辞 under: の使用を許可する制約については、組織のポリシーの制約ページをご覧ください。
under: 接頭辞を使用する値は、階層サブツリー文字列と呼ばれます。階層サブツリー文字列は、適用先のリソースのタイプを指定します。たとえば、constraints/compute.storageResourceUseRestrictions 制約を設定するときに projects/PROJECT_ID のサブツリー文字列を使用すると、PROJECT_ID とそのすべての子に対する Compute Engine ストレージの使用が許可または拒否されます。
- describeコマンドを使用して、組織リソースに関する現在のポリシーを取得します。- gcloud org-policies describe \ CONSTRAINT_NAME \ --organization=ORGANIZATION_ID- 以下のように置き換えます。 - ORGANIZATION_IDは、組織リソースの一意の識別子です。
- CONSTRAINT_NAMEは、サービスに対して適用する制約です。
 - さらに、 - --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/CONSTRAINT_NAME 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 \ CONSTRAINT_NAME --effective \ --organization=ORGANIZATION_ID- コマンドの出力は次のようになります。 - name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME spec: rules: - values: deniedValues: - under:folders/VALUE_A- これでポリシーは、フォルダ VALUE_A とそのすべての子リソースを拒否するように評価します。 
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
プロジェクトの組織ポリシーを結合する
リソースには組織のポリシーを設定できます。このポリシーは、親リソースから継承したポリシーと結合されます。この結合されたポリシーは、継承のルールに基づいて、新しい有効なポリシーを作成するものと評価されます。
- describeコマンドで、リソースに対する現在のポリシーを取得します。- gcloud org-policies describe \ CONSTRAINT_NAME \ --project=PROJECT_ID- 以下のように置き換えます。 - PROJECT_ID: プロジェクトの固有識別子。
- CONSTRAINT_NAME: サービスに対して適用する制約。
 - ポリシーが設定されていない場合は、次のような - NOT_FOUNDエラーが返されます。- ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
- 現在の有効なポリシーを表示するには、 - describe --effectiveコマンドを使用します。- gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- コマンドの出力には、組織リソースから継承された、拒否する値が含まれます。 - name: projects/PROJECT_ID/policies/CONSTRAINT_NAME spec: rules: - values: deniedValues: - VALUE_A
- set-policyコマンドを使用して、プロジェクトにポリシーを設定します。- ポリシーを保存する一時ファイル - /tmp/policy.yamlを作成します。- name: projects/PROJECT_ID/policies/CONSTRAINT_NAME 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 \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- コマンドの出力には、リソースのポリシーと親のポリシーを結合した実際の結果が含まれます。 - name: projects/PROJECT_ID/policies/CONSTRAINT_NAME spec: rules: - values: deniedValues: - VALUE_A - VALUE_B - VALUE_C
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
デフォルトの制約動作を復元する
reset コマンドを使用して、制約のデフォルトの動作が使用されるようにポリシーをリセットできます。使用可能なすべての制約とデフォルト値のリストについては、組織のポリシーの制約をご覧ください。次の例では、デフォルトの制約の動作が、すべての値を許可することであることを前提としています。
- プロジェクトに実際に適用されているポリシーを取得して、現在結合されているポリシーを表示します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- PROJECT_ID は、プロジェクトの固有識別子に置き換えます。コマンドの出力は次のようになります。 - name: projects/PROJECT_ID/policies/CONSTRAINT_NAME spec: rules: - values: deniedValues: - VALUE_A - VALUE_B - VALUE_C
- resetコマンドを使用して、組織のポリシーをリセットします。- gcloud org-policies reset CONSTRAINT_NAME \ --project=PROJECT_ID
- 有効なポリシーを取得して、デフォルトの動作を確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- コマンドの出力では、すべての値が許可されています。 - name: projects/PROJECT_ID/policies/CONSTRAINT_NAME spec: rules: - allowAll: true
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織ポリシーを削除する
リソースから、組織ポリシーを削除することができます。組織ポリシーが設定されていないリソースは、親リソースのポリシーを継承します。組織リソース上の組織ポリシーを削除すると、制約のデフォルト動作が有効なポリシーとなります。
組織の組織のポリシーを削除する手順は以下のとおりです。
- deleteコマンドを使用して、組織リソースに対するポリシーを削除します。- gcloud org-policies delete \ CONSTRAINT_NAME \ --organization=ORGANIZATION_ID- ORGANIZATION_ID は、組織リソースの固有識別子に置き換えます。コマンドの出力は次のようになります。 - Deleted policy [organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME]. {}
- 組織で有効なポリシーを取得し、ポリシーが適用されていないことを確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --organization=ORGANIZATION_ID- コマンドの出力は次のようになります。 - name: organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME spec: rules: - allowAll: true
プロジェクトの組織のポリシーを削除する手順は以下のとおりです。
- deleteコマンドを使用して、プロジェクトからポリシーを削除します。- gcloud org-policies delete \ CONSTRAINT_NAME \ --project=PROJECT_ID- PROJECT_IDはプロジェクトの一意の識別子です。コマンドの出力は次のようになります。- Deleted policy [projects/PROJECT_ID/policies/CONSTRAINT_NAME]. {}
- プロジェクトで有効なポリシーを取得し、ポリシーが適用されていないことを確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- コマンドの出力は次のようになります。 - name: projects/PROJECT_ID/policies/CONSTRAINT_NAME spec: rules: - allowAll: true
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織のポリシーでブール値ルールを使用する
組織リソースに対する適用を設定する
次のプロセスでは、Google Cloud CLI を使用してブール値ルールで組織のポリシーを設定する方法について説明します。 Google Cloud コンソールを使用して組織のポリシーを表示および設定する方法については、ポリシーの作成と管理をご覧ください。
- describeコマンドを使用して、組織リソースに関する現在のポリシーを取得します。- gcloud org-policies describe \ CONSTRAINT_NAME \ --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/CONSTRAINT_NAME spec: rules: - enforce: true
- set-policyコマンドを実行します。- gcloud org-policies set-policy /tmp/policy.yaml
 
- describe --effectiveを使用して現在の有効なポリシーを表示します。- gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --organization=ORGANIZATION_ID- コマンドの出力は次のようになります。 - name: organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT spec: rules: - enforce: true
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
プロジェクトの組織ポリシーをオーバーライドする
プロジェクトの組織ポリシーをオーバーライドするには、プロジェクトの下の階層にあるすべてのリソースに対して制約の適用を無効にするポリシーを設定します。
- リソースの現在のポリシーを取得し、このポリシーが空であることを確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME \ --project=PROJECT_ID- ここで、 - PROJECT_IDはプロジェクトの固有識別子です。- ポリシーが設定されていない場合は、次のような - NOT_FOUNDエラーが返されます。- ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
- プロジェクトで有効なポリシーを取得します。制約がこのプロジェクトに適用されていることがわかります。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- コマンドの出力は次のようになります。 - name: projects/PROJECT_ID/policies/BOOLEAN_CONSTRAINT spec: rules: - enforce: true
- set-policyコマンドを使用して、プロジェクトにポリシーを設定します。- ポリシーを保存する一時ファイル - /tmp/policy.yamlを作成します。- name: projects/PROJECT_ID/policies/CONSTRAINT_NAME spec: rules: - enforce: false
- set-policyコマンドを実行します。- gcloud org-policies set-policy /tmp/policy.yaml
 
- 有効なポリシーを取得して、ポリシーがプロジェクトに適用されていないことを確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- コマンドの出力は次のようになります。 - name: organizations/ORGANIZATION_ID/policies/BOOLEAN_CONSTRAINT spec: rules: - enforce: false
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織ポリシーを削除する
リソースから、組織ポリシーを削除することができます。組織ポリシーが設定されていないリソースは、親リソースのポリシーを継承します。組織リソース上の組織ポリシーを削除すると、制約のデフォルト動作が有効なポリシーとなります。
組織とプロジェクトの組織のポリシーを削除する手順は以下のとおりです。
- deleteコマンドを使用して、組織リソースからポリシーを削除します。- gcloud org-policies delete \ CONSTRAINT_NAME \ --organization=ORGANIZATION_ID- ORGANIZATION_IDは、組織リソースの固有識別子に置き換えます。コマンドの出力は次のようになります。- Deleted policy [organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME]. {}
- 組織で有効なポリシーを取得し、ポリシーが適用されていないことを確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --organization=ORGANIZATION_ID- ポリシーが設定されていない場合は、次のような - NOT_FOUNDエラーが返されます。- ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
- deleteコマンドを使用して、プロジェクトから組織のポリシーを削除します。- gcloud org-policies delete \ CONSTRAINT_NAME \ --project=PROJECT_ID- コマンドの出力は次のようになります。 - Deleted policy [organizations/ORGANIZATION_ID/policies/CONSTRAINT_NAME]. {}
- プロジェクトで有効なポリシーを取得し、ポリシーが適用されていないことを確認します。 - gcloud org-policies describe \ CONSTRAINT_NAME --effective \ --project=PROJECT_ID- PROJECT_IDは、組織の固有識別子に置き換えます。- ポリシーが設定されていない場合は、次のような - NOT_FOUNDエラーが返されます。- ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。
組織のポリシーでマネージド制約を使用する
マネージド制約は、カスタム組織のポリシー プラットフォーム上に構築されています。組織ポリシー サービスの Policy Simulator とドライラン組織ポリシーを使用して、ポリシーの変更をより安全にデプロイできます。
管理対象の制約を表示して特定する
組織で使用可能な管理対象の制約を確認するには、次の操作を行います。
コンソール
- Google Cloud コンソールで、[組織のポリシー] ページに移動します。 
- プロジェクト選択ツールから、組織のポリシーを表示するプロジェクト、フォルダ、または組織を選択します。表示された [組織のポリシー] ページに、このリソースで使用可能な組織のポリシーの制約のリストが表示されます。 
- 組織のポリシーのリストを制約タイプでフィルタまたは並べ替えて、マネージド制約を見つけることができます。リストから、詳細を表示するマネージド制約を選択します。表示される [ポリシーの詳細] ページで、この組織のポリシーのソース、このリソースに対する有効なポリシーの評価、このリソースに対する組織のポリシーの現在の構成、制約の詳細、それらを使用する制約のデフォルト パラメータを確認できます。 
gcloud
組織のポリシーで組織に適用されているマネージド制約とカスタム制約を一覧表示するには、org-policies list-custom-constraints コマンドを使用します。
gcloud org-policies list-custom-constraints \
  --organization=ORGANIZATION_ID
ORGANIZATION_ID は組織の ID に置き換えます。
リソースの特定のマネージド制約の詳細を取得するには、org-policies describe-custom-constraint コマンドを使用します。
gcloud org-policies describe-custom-constraint CONSTRAINT_NAME \
    --organization=ORGANIZATION_ID
次のように置き換えます。
- CONSTRAINT_NAME: 詳細を取得するマネージド制約の名前。例:- iam.managed.disableServiceAccountKeyUpload
- ORGANIZATION_ID: 組織の ID。
REST
組織のポリシーで設定されたマネージド制約とカスタム制約を組織で一覧表示するには、organizations.customConstraints.list メソッドを使用します。
  GET https://orgpolicy.googleapis.com/v2/{parent=organizations/ORGANIZATION_ID}/customConstraints
ORGANIZATION_ID は組織の ID に置き換えます。
マネージド制約の作成と更新
組織のポリシーは、制約の構成によって定義されます。リソースに設定することも、親リソースから継承することも、Google 管理のデフォルトの動作にリセットすることもできます。
マネージド制約に基づいて組織のポリシーを作成または更新するには、次の操作を行います。
コンソール
- Google Cloud コンソールで、[組織のポリシー] ページに移動します。
- プロジェクト選択ツールから、組織のポリシーを編集するプロジェクト、フォルダ、または組織を選択します。表示された [組織のポリシー] ページに、このリソースで使用可能な組織のポリシーの制約のフィルタ可能なリストが表示されます。 
- リストから、組織のポリシーを更新するマネージド制約を選択します。 
- このリソースの組織のポリシーを更新するには、[ポリシーを管理] をクリックします。 
- [ポリシーの編集] ページで、[親のポリシーをオーバーライドする] を選択します。 
- [ルールを追加] を選択します。 
- [適用] で、この組織のポリシーの適用を有効にするかどうかを選択します。 
- タグで組織のポリシーに条件を設定するには、[条件を追加] をクリックします。組織のポリシーに条件付きルールを追加する場合は、少なくとも 1 つは無条件のルールを追加する必要があります。そうしないとポリシーを保存できないのでご注意ください。詳細については、タグを使用した組織のポリシーの設定をご覧ください。 
- この制約がパラメータをサポートしている場合、[パラメータ] にパラメータが表示され、構成された値が表示されます。パラメータが構成されていない場合は、代わりに Google マネージドのデフォルト値が表示されます。 - パラメータを変更するには、 [編集] を選択します。 - [値] で [デフォルト] を選択すると、この制約がリセットされ、Google で管理されるデフォルト値が使用されて表示されます。
 - [ユーザー定義] を選択して、パラメータを構成します。 - 値のリストを受け入れるパラメータの場合は、フィールドへの入力を許可または拒否する値を入力します。(値を追加)を選択して、フィールドを追加します。
 - パラメータ値の検証に使用される Common Expression Language(CEL)式については、有効な値の式で説明しています。すべてのユーザー定義値はその式を満たす必要があります。 - ブール値のパラメータについては、[True] または [False] を選択して、パラメータを適用するかどうかを指定します。 
- [保存] をクリックします。 
 
- 必要に応じて、組織のポリシーの変更が適用される前にその影響をプレビューするには、[変更内容をテスト] をクリックします。組織のポリシーの変更のテストの詳細については、Policy Simulator で組織のポリシーの変更をテストするをご覧ください。 
- ドライラン モードで組織のポリシーを適用するには、[ドライラン ポリシーを設定] をクリックします。詳細については、ドライラン モードで組織のポリシーを作成するをご覧ください。 
- ドライラン モードの組織のポリシーが意図したとおりに動作していることを確認したら、[ポリシーを設定] をクリックしてライブポリシーを設定します。 
gcloud
- YAML ファイルを作成して組織のポリシーを定義します。この制約がパラメータをサポートしていない場合は、 - rulesの下の- parametersブロックを省略します。- name: RESOURCE_TYPE/RESOURCE_ID/policies/CONSTRAINT_NAME spec: rules: - enforce: ENFORCEMENT_STATE parameters: LIST_PARAMETER: - LIST_VALUE_1 - LIST_VALUE_2 BOOLEAN_PARAMETER: BOOLEAN_VALUE dryRunSpec: rules: - enforce: ENFORCEMENT_STATE parameters: LIST_PARAMETER: - LIST_VALUE_1 - LIST_VALUE_2 BOOLEAN_PARAMETER: BOOLEAN_VALUE- 次のように置き換えます。 - RESOURCE_TYPEは- organizations、- folders、または- projectsに置き換えます。
- RESOURCE_IDは、- RESOURCE_TYPEで指定されたリソースのタイプに応じた、組織 ID、フォルダ ID、プロジェクト ID またはプロジェクト番号に置き換えます。
- CONSTRAINT_NAMEは、設定する制約の名前に置き換えます。
- ENFORCEMENT_STATEと- trueを使用して、設定時にこの組織のポリシーを適用します。または、- falseを使用して、設定時にこの組織のポリシーを無効にします。
- LIST_PARAMETERは、構成するリスト パラメータの名前に置き換えます。使用可能なパラメータのリストについては、制約の説明をご覧ください。
- LIST_VALUE_1、- LIST_VALUE_2、その他のリスト値。このパラメータの構成に基づいて、許可または拒否する値のリストが含まれます。許容値の詳細については、制約の説明をご覧ください。
- BOOLEAN_PARAMETER: 構成するブール値パラメータの名前。使用可能なパラメータのリストについては、制約の説明をご覧ください。
- BOOLEAN_VALUEと- Trueまたは- False。
 - タグで組織のポリシーに条件を設定するには、 - rulesに- conditionブロックを追加します。組織のポリシーに条件付きルールを追加する場合は、少なくとも 1 つは無条件のルールを追加する必要があります。そうしないとポリシーを保存できないのでご注意ください。詳細については、タグを使用した組織のポリシーの設定をご覧ください。
- dryRunSpecフラグを指定して- org-policies set-policyコマンドを実行し、ドライラン モードで組織のポリシーを設定します。- gcloud org-policies set-policy POLICY_PATH \ --update-mask=dryRunSpec- POLICY_PATHは、組織のポリシーの YAML ファイルのパスに置き換えます。- ドライラン組織のポリシーの詳細については、ドライラン モードで組織のポリシーを作成するをご覧ください。 
- policy-intelligence simulate orgpolicyコマンドを使用して、組織のポリシーの変更が適用される前に、その影響をプレビューします。- gcloud policy-intelligence simulate orgpolicy \ --organization=ORGANIZATION_ID \ --policies=POLICY_PATH- 次のように置き換えます。 - ORGANIZATION_IDは、組織 ID(- 1234567890123など)に置き換えます。複数の組織にわたる変更のシミュレーションはサポートされていません。
- POLICY_PATHは、組織のポリシーの YAML ファイルのパスに置き換えます。
 - 組織のポリシーの変更のテストの詳細については、Policy Simulator で組織のポリシーの変更をテストするをご覧ください。 
- ドライラン モードの組織のポリシーが意図したとおりに動作していることを確認したら、 - org-policies set-policyコマンドと- specフラグを使用してライブポリシーを設定します。- gcloud org-policies set-policy POLICY_PATH \ --update-mask=spec- POLICY_PATHは、組織のポリシーの YAML ファイルのパスに置き換えます。
REST
組織のポリシーを設定するには、organizations.policies.create メソッドを使用します。
POST https://orgpolicy.googleapis.com/v2/{parent=organizations/ORGANIZATION_ID}/policies
リクエストの JSON 本文には、組織のポリシーの定義が含まれています。この制約がパラメータをサポートしていない場合は、rules の下の parameters ブロックを省略します。
{
  "name": "RESOURCE_TYPE/RESOURCE_ID/policies/CONSTRAINT_NAME",
  "spec": {
    "rules": [
      {
        "enforce": ["ENFORCEMENT_STATE"],
        "parameters": {
          "LIST_PARAMETER": [
            "LIST_VALUE_1",
            "LIST_VALUE_2"
          ],
          BOOLEAN_PARAMETER: BOOLEAN_VALUE
        }
      }
    ]
  }
  "dryRunSpec": {
    "rules": [
      {
        "enforce": ["ENFORCEMENT_STATE"],
        "parameters": {
          "LIST_PARAMETER": [
            "LIST_VALUE_1",
            "LIST_VALUE_2"
          ],
          BOOLEAN_PARAMETER: BOOLEAN_VALUE
        }
      }
    ]
  }
}
次のように置き換えます。
- RESOURCE_TYPEは- organizations、- folders、または- projectsに置き換えます。
- RESOURCE_IDは、- RESOURCE_TYPEで指定されたリソースのタイプに応じた、組織 ID、フォルダ ID、プロジェクト ID またはプロジェクト番号に置き換えます。
- CONSTRAINT_NAMEは、設定する制約の名前に置き換えます。
- ENFORCEMENT_STATEと- trueを使用して、設定時にこの組織のポリシーを適用します。または、- falseを使用して、設定時にこの組織のポリシーを無効にします。
- LIST_PARAMETERは、構成するリスト パラメータの名前に置き換えます。使用可能なパラメータのリストについては、制約の説明をご覧ください。
- LIST_VALUE_1、- LIST_VALUE_2、その他のリスト値。このパラメータの構成に基づいて、許可または拒否する値のリストが含まれます。許容値の詳細については、制約の説明をご覧ください。
- BOOLEAN_PARAMETER: 構成するブール値パラメータの名前。使用可能なパラメータのリストについては、制約の説明をご覧ください。
- BOOLEAN_VALUEと- Trueまたは- False。
タグで組織のポリシーに条件を設定するには、rules に condition ブロックを追加します。組織のポリシーに条件付きルールを追加する場合は、少なくとも 1 つは無条件のルールを追加する必要があります。そうしないとポリシーを保存できないのでご注意ください。詳細については、タグを使用した組織のポリシーの設定をご覧ください。
ドライラン組織のポリシーの詳細については、ドライラン モードで組織のポリシーを作成するをご覧ください。
組織のポリシーの変更を完全に適用するには、最大 15 分ほどかかる場合があります。