Azure Policy でのスコープについて

どのリソースが評価可能であるかと、どのリソースが Azure Policy によって評価されるかを決定する、多数の設定があります。 これらの制御の主要な概念が、"スコープ" です。 Azure Policy のスコープは、Azure Resource Manager でのスコープの動作に基づいています。 概要については、Azure Resource Manager でのスコープに関するセクションを参照してください。

この記事では、Azure Policy での "スコープ" の重要性と、それに関連するオブジェクトおよびプロパティについて説明します。

定義の場所

Azure Policy によって使用される最初のインスタンスのスコープは、ポリシー定義が作成されるときです。 定義は、管理グループまたはサブスクリプションに保存できます。 この場所によって、イニシアティブまたはポリシーを割り当てることができるスコープが決まります。 リソースは、割り当ての対象になるには、定義の場所のリソース階層内にある必要があります。 ポリシーの評価方法については、「Azure Policy の対象となるリソース」を参照してください。

定義の場所が:

  • サブスクリプション - ポリシーが定義されているサブスクリプションと、そのサブスクリプション内のリソースをポリシー定義に割り当てることができます。
  • 管理グループ - ポリシーが定義されている管理グループと、子管理グループと子サブスクリプション内のリソースをポリシー定義に割り当てることができます。 ポリシー定義を複数のサブスクリプションに適用する予定がある場合、その場所は各サブスクリプションを含む管理グループである必要があります。

この場所は、ポリシー定義を使用するすべてのリソースによって共有されるリソース コンテナーである必要があります。 このリソース コンテナーは、通常、ルート管理グループの近くにある管理グループです。

割り当てスコープ

割り当てには、スコープを設定するいくつかのプロパティがあります。 これらのプロパティを使用して、どのリソースを Azure Policy で評価するかと、どのリソースをコンプライアンスで考慮するかを決定します。 これらのプロパティは、以下の概念と対応しています。

  • 包含 - リソース階層または個々のリソースは、定義によってコンプライアンスを評価されます。 割り当てオブジェクトの properties.scope プロパティによって、何を包含し、コンプライアンスを評価するかが決まります。 詳細については、割り当ての定義に関するページを参照してください。

  • 除外 - リソース階層または個々のリソースは、定義によってコンプライアンスを評価されません。 割り当てオブジェクトの properties.notScopes "配列" プロパティによって、何を除外するかが決まります。 これらのスコープ内のリソースは評価されず、コンプライアンスの対象になりません。 詳細については、割り当ての定義の除外スコープに関するセクションを参照してください。

ポリシー割り当てのプロパティに加えて、ポリシー適用除外オブジェクトです。 適用除外により、評価されない割り当ての部分を識別する方法が提供されることで、スコープのストーリーが強化されます。

  • 免除 - リソース階層または個々のリソースは、定義によってコンプライアンスを評価されるはずですが、別の方法によって適用除外や軽減が行われているなどの理由で評価されません。 この状態のリソースは、追跡できるように、コンプライアンス レポートでは免除として表示されます。 免除オブジェクトは、リソース階層に対して、または子オブジェクトとして個々のリソースに対して作成されます。これにより、免除のスコープが決まります。 リソース階層または個々のリソースは、複数の割り当てから免除できます。 免除は、expiresOn プロパティを使用して、スケジュールに従って有効期限が切れるように構成できます。 詳細については、免除の定義に関するページを参照してください。

    注意

    リソース階層または個々のリソースに免除を与えることによる影響のため、免除には追加のセキュリティ対策があります。 リソース階層または個々のリソースに対して Microsoft.Authorization/policyExemptions/write 操作を要求するだけでなく、免除の作成者は、ターゲットの割り当てに対する exempt/Action 動詞を持つ必要があります。

スコープの比較

次の表は、スコープのオプションの比較です。

包含 除外 (notScopes) 除外
リソースが評価される - -
Resource Manager オブジェクト - -
ポリシー割り当てオブジェクトを変更する必要がある -

では、除外または免除のどちらを使用するかをどのように選択しますか? 通常、除外は、同じレベルのガバナンスを必要としないテスト環境のような、広範な範囲の評価を完全にバイパスする場合にお勧めします。 リソースまたはリソース階層を引き続き追跡する必要があり、それ以外の場合は評価する必要がある、期限付きのシナリオまたはより具体的なシナリオでは、免除が推奨されますが、コンプライアンスを評価すべきでない特定の理由があります。

次のステップ