Azure Policy を使用してトラフィック分析を管理する

Azure Policy は、組織の標準を適用し、コンプライアンスを大規模に評価するのに役立ちます。 Azure Policy の一般的なユースケースには、リソースの整合性、規制コンプライアンス、セキュリティ、コスト、管理のガバナンスの実装が含まれています。 Azure Policy の詳細については、「Azure Policy とは」と「クイックスタート: 準拠していないリソースを識別するためのポリシー割り当てを作成する」を参照してください。

この記事では、セットアップを管理するために Azure Network Watcher トラフィック分析に利用できる 3 つの組み込みポリシーを使用する方法について説明します。

組み込みポリシーを使用した監査フロー ログ

[Network Watcher のフロー ログではトラフィック分析を有効にする必要がある] ポリシーは、種類 Microsoft.Network/networkWatchers/flowLogs の Azure Resource Manager オブジェクトを監査して、既存のフロー ログをすべて監査し、フロー ログ リソースの networkWatcherFlowAnalyticsConfiguration.enabled プロパティを使用してトラフィック分析が有効になっているかどうかを確認します。 次にこのポリシーは、プロパティが false に設定されているフロー ログ リソースにフラグを設定します。

組み込みポリシーを使用してフロー ログを監査するには:

  1. Azure portal にサインインします。

  2. ポータルの上部にある検索ボックスに、「ポリシー」と入力します。 検索結果にある [ポリシー] を選択します。

    Azure portal で「ポリシー」を検索する操作のスクリーンショット。

  3. [割り当て] を選択し、[ポリシーの割り当て] を選択します。

    Azure portal で [ポリシーの割り当て] を選択する操作のスクリーンショット。

  4. [スコープ] の横にある省略記号 [...] を選択して、ポリシーで監査するフロー ログを含む Azure サブスクリプションを選択します。 フロー ログを含むリソース グループを選択することもできます。 選択した後、[選択] ボタンを選択します。

    Azure portal でポリシーのスコープを選択しているスクリーンショット。

  5. [ポリシー定義] の横にある省略記号 [...] を選択して、割り当てる組み込みポリシーを選択します。 検索ボックスに「トラフィック分析」と入力し、[組み込み] フィルターを選択します。 検索結果から、[Network Watcher のフロー ログではトラフィック分析を有効にする必要がある] を選択し、[追加] を選択します。

    Azure portal で監査ポリシーを選択しているスクリーンショット。

  6. [割り当て名] に名前を入力し、[割り当て担当者] に自分の名前を入力します。 このポリシーにパラメーターは必要ありません。

  7. [確認および作成][作成] の順に選択します。

    Azure portal で監査ポリシーを割り当てるための [基本] タブのスクリーンショット。

    注意

    このポリシーにパラメーターは必要ありません。 また、ロール定義も含まれていないため、[修復] タブでマネージド ID のロールの割り当てを作成する必要はありません。

  8. [コンプライアンス] を選択します。 割り当ての名前を検索し、選択します。

    Azure portal 内の監査ポリシーが表示されている [コンプライアンス] ページのスクリーンショット。

  9. [リソース コンプライアンス] には、準拠していないすべてのフロー ログが一覧表示されます。

    Azure portal 内の監査ポリシーの詳細を示すスクリーンショット。

deployIfNotExists ポリシーを使用してトラフィック分析をデプロイおよび構成する

NSG フロー ログを構成するために使用できる deployIfNotExists ポリシーは 2 つあります。

  • トラフィック分析に特定のワークスペース、ストレージ アカウント、フロー ログ保持ポリシーを使用するようにネットワーク セキュリティ グループを構成する: このポリシーでは、トラフィック分析が有効になっていないネットワーク セキュリティ グループにフラグを設定します。 フラグが設定されたネットワーク セキュリティ グループの場合、対応する NSG フロー ログ リソースが存在しないか、NSG フロー ログ リソースは存在するがトラフィック分析が有効になっていません。 ポリシーで既存のリソースに影響を与える場合は、"修復" タスクを作成できます。

    修復は、ポリシーの割り当て中またはポリシーが割り当てられて評価された後に割り当てることができます。 修復により、指定されたパラメーターを使用してフラグが設定されたすべてのリソースのトラフィック分析が有効になります。 ネットワーク セキュリティ グループで特定のストレージ ID に対してフロー ログが既に有効になっているが、トラフィック分析は有効になっていない場合、修復により、指定されたパラメーターを使用してこのネットワーク セキュリティ グループのトラフィック分析が有効になります。 パラメーターに指定されているストレージ ID がフロー ログに対して既に有効になっているものと異なる場合、後者は修復タスクで指定されたストレージ ID で上書きされます。 上書きしない場合は、トラフィック分析を有効にするためにネットワーク セキュリティ グループを構成するのポリシーを使用します。

  • トラフィック分析を有効にするためにネットワーク セキュリティ グループを構成する: このポリシーは前のポリシーと似ていますが、修復中は、フロー ログは有効になっているが、ポリシー割り当てで指定されたパラメーターを使用したトラフィック分析が無効になっている、フラグが設定されたネットワーク セキュリティ グループのフロー ログ設定は上書きされません。

注意

Network Watcher はリージョン サービスであるため、2 つの deployIfNotExists ポリシーは、特定のリージョンに存在するネットワーク セキュリティ グループに適用されます。 別のリージョン内のネットワーク セキュリティ グループの場合は、そのリージョンに別のポリシー割り当てを作成します。

deployIfNotExists の 2 つのポリシーのいずれかを割り当てるには、次の手順に従います。

  1. Azure portal にサインインします。

  2. ポータルの上部にある検索ボックスに、「ポリシー」と入力します。 検索結果にある [ポリシー] を選択します。

    Azure portal で「ポリシー」を検索する操作のスクリーンショット。

  3. [割り当て] を選択し、[ポリシーを割り当てる] を選択します。

    Azure portal で [ポリシーの割り当て] を選択する操作のスクリーンショット。

  4. [スコープ] の横にある省略記号 [...] を選択して、ポリシーで監査するフロー ログを含む Azure サブスクリプションを選択します。 フロー ログを含むリソース グループを選択することもできます。 選択した後、[選択] ボタンを選択します。

    Azure portal でポリシーのスコープを選択しているスクリーンショット。

  5. [ポリシー定義] の横にある省略記号 [...] を選択して、割り当てる組み込みポリシーを選択します。 検索ボックスに「トラフィック分析」と入力し、[組み込み] フィルターを選択します。 検索結果から、[トラフィック分析に特定のワークスペース、ストレージ アカウント、フロー ログ保有ポリシーを使用するようにネットワーク セキュリティ グループを構成する] を選択し、[追加] を選択します。

    Azure portal で deployIfNotExists ポリシーを選択しているスクリーンショット。

  6. [割り当て名] に名前を入力し、[割り当て担当者] に自分の名前を入力します。

    Azure portal でデプロイ ポリシーを割り当てる [基本] タブのスクリーンショット。

  7. [次へ] ボタンを 2 回選択するか、[パラメーター] タブを選択します。次に、次の値を入力または選択します。

    設定
    効果 [DeployIfNotExists] を選択します。
    ネットワーク セキュリティ グループのリージョン ポリシーで対象とするネットワーク セキュリティ グループのリージョンを選択します。
    ストレージ リソース ID ストレージ アカウントのフル リソース ID を入力します。 ストレージ アカウントは、ネットワーク セキュリティ グループと同じリージョンに存在する必要があります。 ストレージ リソース ID の形式は /subscriptions/<SubscriptionID>/resourceGroups/<ResouceGroupName>/providers/Microsoft.Storage/storageAccounts/<StorageAccountName> です。
    トラフィック分析の処理間隔 (分) 処理されたログがワークスペースにプッシュされる頻度を選択します。 現在使用可能な値は 10 および 60 分です。 既定値は 60 分です。
    ワークスペースのリソース ID トラフィック分析を有効にする必要があるワークスペースのフル リソース ID を入力します。 ワークスペース リソース ID の形式は /subscriptions/<SubscriptionID>/resourcegroups/<ResouceGroupName>/providers/microsoft.operationalinsights/workspaces/<WorkspaceName> です。
    ワークスペースのリージョン トラフィック分析ワークスペースのリージョンを選択します。
    ワークスペース ID トラフィック分析ワークスペース ID を入力します。
    Network Watcher リソース グループ Network Watcher のリソース グループを選択します。
    Network Watcher 名 Network Watcher の名前を入力します。
    フロー ログを保持する日数 フロー ログ データをストレージ アカウントに保持する日数を入力します。 データを永続的に保持する場合は、「0」と入力します。

    Note

    トラフィック分析ワークスペースのリージョンは、対象となるネットワーク セキュリティ グループのリージョンと同じである必要はありません。

    Azure portal でデプロイ ポリシーを割り当てる [パラメーター] タブのスクリーンショット。

  8. [次へ] または [修復] タブを選択します。次の値を入力または選択します。

    設定
    修復タスクを作成する ポリシーが既存のリソースに影響を与えるようにする場合は、チェック ボックスをオンにします。
    マネージド ID を作成する チェックボックスをオンにします。
    マネージド ID の種類 使用するマネージド ID の種類を選択します。
    システム割り当て ID の場所 システム割り当て ID のリージョンを選択します。
    スコープ ユーザー割り当て ID のスコープを選択します。
    既存のユーザー割り当て ID ユーザー割り当て ID を選択します。

    Note

    このポリシーを使用するには、"共同作成者" または "所有者" のアクセス許可が必要です。

    Azure portal でデプロイ ポリシーを割り当てる [修復] タブのスクリーンショット。

  9. [確認および作成][作成] の順に選択します。

  10. [コンプライアンス] を選択します。 割り当ての名前を検索し、選択します。

    Azure portal 内のデプロイ ポリシーが表示されている [コンプライアンス] ページのスクリーンショット。

  11. [リソースのコンプライアンス] を選択して、準拠していないすべてのフロー ログの一覧を取得します。

    Azure portal 内のデプロイ ポリシーの詳細を示すスクリーンショット。

トラブルシューティング

修復タスクが PolicyAuthorizationFailed エラー コードで失敗する: サンプル エラー例 "ポリシー割り当て /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/DummyRG/providers/Microsoft.Authorization/policyAssignments/b67334e8770a4afc92e7a929/ リソース ID には、デプロイを作成するために必要なアクセス許可がありません。"

このようなシナリオでは、マネージド ID に手動でアクセスを許可する必要があります。 適切なサブスクリプションまたはリソース グループ (ポリシー パラメーターで指定されたリソースを含む) に移動し、ポリシーによって作成されたマネージド ID へのアクセスを共同作成者に許可します。

次のステップ