動的グループを定義するための一致ルールの記述

一致ルールは、動的グループに属するリソースを定義します。

一致ルールは、動的グループに属するリソースを定義します。コンソールで、指定されたテキスト・ボックスにルールを手動で入力するか、ルール・ビルダーを使用できます。ルール・ビルダーによって、ダイアログ内で選択とエントリを行い、エントリに基づいてルールを記述できます。ルール・ビルダーでは、インスタンス変数およびコンパートメント変数がサポートされます。他の変数に基づいてルールを記述するには、手動で入力します。

動的グループのメンバーは、次のものに基づいて定義できます。

  • コンパートメントOCID
  • インスタンスOCID (インスタンスの場合)またはリソースOCID (他のリソースの場合)
  • リソース・タイプ
  • タグ・ネームスペースおよびタグ・キー - 特定のタグ・ネームスペースおよびタグ・キーでタグ付けされたインスタンスを含める(または除外する)。すべてのタグ値が含まれています。たとえば、タグ・ネームスペースdepartmentおよびタグ・キーoperationsでタグ付けされたすべてのインスタンスを含めます。
  • タグ・ネームスペース、タグ・キーおよびタグ値 - タグ・ネームスペースおよびタグ・キーの特定の値でタグ付けされたインスタンスを含める(または除外する)。たとえば、タグ・ネームスペースdepartment、タグ・キーoperationsおよび値'45'でタグ付けされたすべてのインスタンスが含まれます。

一致ルールの構文は次のとおりです。

単一条件の場合:

variable {{=}} | !='value'

いくつかの条件について:

any|all {<condition>,<condition>,...}

サポートされている変数は、次のとおりです。

インスタンスでは、次を使用できます:

  • instance.compartment.id -インスタンスが存在するコンパートメントのOCID
  • instance.id -インスタンスのOCID

サポートされているすべてのリソース・タイプでは、次を使用できます:

  • resource.id - リソースのOCID
  • resource.compartment.id - リソースが存在するコンパートメントのOCID
  • resource.type - リソースのタイプ。リソース・タイプはリソースのOCIDに表示されます。例:
    • ドメインのOCIDの形式はocid1.domain...であるため、domainresource.typeとして指定します。
    • ファンクションのOCIDの形式はocid1.fnfunction...であるため、fnfunctionresource.typeとして指定します
    • APIゲートウェイのOCIDの形式はocid1.apigateway...であるため、apigatewayresource.typeとして指定します
  • tag.<tagnamespace>.<tagkey>.value -タグ・ネームスペースとタグ・キー。たとえば、tag.department.operations.valueです。
  • tag.<tagnamespace>.<tagkey>.value = '<tagvalue>' - タグ・ネームスペース、タグ・キーおよびタグ値。例: tag.department.operations.value = '45'
ノート

IAMポリシーでは、フリーフォーム・タグはサポートされていません。フリーフォーム・タグの理解を参照してください。

例:

コンパートメントのすべてのインスタンスを含める

特定のコンパートメントにあるすべてのインスタンスを含めるには、次の構文を持つルールを追加します。

instance.compartment.id = '<compartment_ocid>'

ルールは、テキスト・ボックスに直接入力することも、ルール・ビルダーを使用することもできます。

テキスト・ボックスのエントリ例:

instance.compartment.id = 'ocid1.compartment.oc1.phx.samplecompartmentocid6q6igvfauxmima74jv'

コンソールのルール・ビルダーを使用して同じルールを追加するには:

  • 「一致するインスタンスを含める:」では、「次のすべて」を選択します。
  • 「次と一致するインスタンス:」では、「コンパートメントOCID」を選択します。
  • 「値:」には、コンパートメントOCIDを入力します。この例では、ocid1.compartment.oc1.phx.samplecompartmentocid6q6igvfauxmima74jvと入力します

現在存在しているか、またはコンパートメント内で作成されている(OCIDにより識別される)すべてのインスタンスは、このグループのメンバーです。

2つ以上のコンパートメントのすべてのインスタンスを含める

2つ(以上)のコンパートメントに存在するすべてのインスタンスを含めるには、次の構文を持つルールを追加します。

Any {instance.compartment.id = '<compartment_ocid>', instance.compartment.id = '<compartment_ocid>'}

各コンパートメント・エントリをカンマで区切ります。

ルールは、テキスト・ボックスに直接入力することも、ルール・ビルダーを使用することもできます。

テキスト・ボックスのエントリ例:

Any {instance.compartment.id = 'ocid1.compartment.oc1.phx:samplecompartmentocid6q6igvfauxmima74jv', instance.compartment.id = 'ocid1.compartment.oc1.phx.samplecompartmentocidythksk89ekslsoelu2'}

コンソールのルール・ビルダーを使用して同じルールを追加するには:

  1. 「一致するインスタンスを含める:」では、「次のいずれか」を選択します。
  2. 「次と一致するインスタンス:」では、「コンパートメントOCID」を選択します。
  3. 「値:」には、コンパートメントOCIDを入力します。この例では、ocid1.compartment.oc1.phx.samplecompartmentocid6q6igvfauxmima74jvと入力します
  4. 「+追加行」をクリックします。2番目の行に次のように入力します。
    • 「次と一致するインスタンス:」では、「コンパートメントOCID」を選択します。
    • 「値:」には、追加のコンパートメントOCIDを入力します。この例では、ocid1.compartment.oc1.phx.samplecompartmentocidythksk89ekslsoelu2と入力します

指定されたコンパートメントのいずれかに現在存在しているか、または後で作成されるインスタンスは、このグループのメンバーです。

特定のコンパートメントの特定のリソースを含める
特定のコンパートメントのリソース・タイプをすべて含める

特定のコンパートメントにある特定のリソース・タイプをすべて含めるには、次の構文を持つルールを追加します:

All {resource.type = '<resource_type', resource.compartment.id = <compartment_ocid>}

テキスト・ボックスにルールを直接入力します。

たとえば、特定のコンパートメントのすべてのボールトを含めるには、次のようなステートメントを入力します:

All {resource.type = 'vaults', resource.compartment.id = 'ocid1.compartment.oc1.phx.samplecompartmentocid'}

指定されたコンパートメント内のすべてのボールトが、この動的グループのメンバーになります。

特定のネームスペースおよびタグ・キーでタグ付けされたすべてのインスタンスを含める

特定のタグ・ネームスペースおよびタグ・キーでタグ付けされたすべてのインスタンスを含めるには、次の構文を持つルールを追加します。

tag.<tagnamespace>.<tagkey>.value

tagnamespace.tagkeyの組合せに割り当てられたすべてのインスタンスが含まれます。タグ値は評価されないため、すべての値が含まれることに注意してください。

例: departmentという名前のタグ・ネームスペースとoperationsというタグ・キーがあるとします。ネームスペースおよびタグ・キーでタグ付けされたすべてのインスタンスを含めます。

テキスト・ボックスに次のルールを入力します。

tag.department.operations.value

現在存在しているすべてのインスタンス、またはタグ・ネームスペースおよびタグ・キーdepartment.operationsで作成されているすべてのインスタンスは、このグループのメンバーです。

特定のタグ・ネームスペース、タグ・キーおよびタグ値を持つ特定のコンパートメントのすべてのインスタンスを含める

特定のタグ・ネームスペース、キーおよび値のタグを持つ特定のコンパートメント内のすべてのインスタンスを含めるには、次の構文を持つルールを追加します。

All {instance.compartment.id = '<compartment_ocid>', tag.<tagnamespace>.<tagkey>.value = '<tagvalue>'}

特定されたコンパートメント内にあり、指定されたタグ値を持つtagnamespace.tagkeyが割り当てられているすべてのインスタンスが含まれます。

例: departmentという名前のタグ・ネームスペースとoperationsというタグ・キーがあるとします。特定のコンパートメントにある、値45のタグが付いたすべてのインスタンスを含めます。

テキスト・ボックスに次のステートメントを入力します。

All {instance.compartment.id = 'ocid1.compartment.oc1.phx.oc1.phx.samplecompartmentocid6q6igvfauxmima74jv,',
tag.department.operations.value = '45'}