次の方法で共有


Azure Monitor ログでクエリを監査する

ログ クエリの監査ログには、Azure Monitor で実行されるログ クエリに関するテレメトリが用意されています。 これには、クエリがいつ実行されたか、誰が実行したか、どのツールが使用されたか、クエリ テキスト、クエリの実行を説明するパフォーマンス統計などの情報が含まれています。

クエリの監査を構成する

クエリの監査は、Log Analytics ワークスペースの診断設定を使用して有効にします。 これにより、現在のワークスペースまたはサブスクリプション内のその他のワークスペース、Azure Event Hubs (Azure の外部に送信するため)、または Azure Storage (アーカイブのため) に監査データを送信することができます。

Azure Portal

Azure portal で、次のいずれかの場所にある Log Analytics ワークスペースの診断設定にアクセスします。

  • [Azure Monitor] メニューから [診断設定] を選択し、ワークスペースを見つけて選択します。

    Azure Monitor の診断設定のスクリーンショット。

  • [Log Analytics ワークスペース] メニューからワークスペースを選択し、 [診断設定] を選択します。

    Log Analytics ワークスペースの診断設定のスクリーンショット。

Resource Manager テンプレート

Resource Manager テンプレートの例は、「Log Analytics ワークスペースの診断設定」から入手できます。

監査データ

監査レコードは、クエリが実行されるたびに作成されます。 Log Analytics ワークスペースにデータを送信すると、LAQueryLogs というテーブルに格納されます。 監査データの各レコードのプロパティについて次の表で説明します。

フィールド 説明
タイムジェネレイテッド クエリが送信された UTC 時刻。
CorrelationId クエリを識別する一意の ID。 トラブルシューティングのシナリオで、Microsoft に問い合わせるときに使用できます。
AADObjectId クエリを開始したユーザー アカウントの Microsoft Entra ID。
AADTenantId クエリを開始したユーザー アカウントのテナントの ID。
AADEmail クエリを開始したユーザー アカウントのテナントのメール アドレス。
AAD クライアント ID クエリを開始するために使用されたアプリケーションの ID と解決済みの名前。
リクエストクライアントアプリ クエリを開始するために使用されたアプリケーションの解決済みの名前。 詳細については、「クライアント アプリを要求する」を参照してください。
QueryTimeRangeStart クエリに対して選択された時間範囲の開始。 これは一部のシナリオでは設定されない場合があります。たとえば、クエリが Log Analytics から開始され、時間範囲が時間ピッカーではなくクエリ内で指定されている場合などです。
クエリ時間範囲終了 クエリに対して選択された時間範囲の終了。 これは一部のシナリオでは設定されない場合があります。たとえば、クエリが Log Analytics から開始され、時間範囲が時間ピッカーではなくクエリ内で指定されている場合などです。
クエリテキスト 実行されたクエリのテキスト。
RequestTarget クエリを送信するために API URL が使用されました。
リクエストコンテキスト クエリが実行を要求された対象のリソースの一覧。 最大 3 つの文字列配列 (ワークスペース、アプリケーション、リソース) が含まれます。 サブスクリプションまたはリソース グループを対象とするクエリは、resources と示されます。 RequestTarget によって暗黙的に示されたターゲットが含まれます。
解決できる場合は、各リソースのリソース ID が含まれます。 リソースへのアクセス時にエラーが返された場合は、解決できない可能性があります。 この場合は、クエリの特定のテキストが使用されます。
クエリであいまいな名前 (複数のサブスクリプションに存在するワークスペース名など) が使用されている場合は、このあいまいな名前が使用されます。
リクエストコンテキストフィルター クエリの呼び出しの一部として指定されたフィルターのセット。 最大で3つの文字列配列が含まれます。
- ResourceTypes - クエリのスコープを制限するリソースの種類
- Workspaces - クエリを制限するワークスペースの一覧
- WorkspaceRegions - クエリを制限するワークスペース リージョンの一覧
レスポンスコード クエリの送信時に返された HTTP 応答コード。
応答時間 (ResponseDurationMs) 応答が返されるまでの時間。
ResponseRowCount クエリによって返される行の合計数。
StatsCPUTimeMs 計算、解析、データの取得に使用された合計コンピューティング時間。 クエリが状態コード 200 で返された場合にのみ設定されます。
StatsDataProcessedKB クエリを処理するためにアクセスされたデータの量。 対象のテーブルのサイズ、使用された期間、適用されたフィルター、参照されている列の数の影響を受けます。 クエリが状態コード 200 で返された場合にのみ設定されます。
統計データ処理開始 クエリを処理するためにアクセスされた最も古いデータの時刻。 クエリの明示的な期間と適用されるフィルターの影響を受けます。 これは、データのパーティション分割のために、明示的な期間よりも長くなる場合があります。 クエリが状態コード 200 で返された場合にのみ設定されます。
統計データ処理完了 クエリを処理するためにアクセスされた最も新しいデータの時刻。 クエリの明示的な期間と適用されるフィルターの影響を受けます。 これは、データのパーティション分割のために、明示的な期間よりも長くなる場合があります。 クエリが状態コード 200 で返された場合にのみ設定されます。
StatsWorkspaceCount クエリによってアクセスされたワークスペースの数。 クエリが状態コード 200 で返された場合にのみ設定されます。
StatsRegionCount クエリによってアクセスされたリージョンの数。 クエリが状態コード 200 で返された場合にのみ設定されます。

クライアント アプリを要求する

リクエストクライアントアプリ 説明
AAPBI Log Analytics の Power BI との統合
アプリ解析 Azure ポータルでの Log Analytics のエクスペリエンス。
AppInsightsポータル拡張 ワークブックまたはアプリケーションインサイト
ASCポータル Microsoft Defender for Cloud。
ASI_Portal Sentinel。
AzureAutomation Azure Automation。
AzureMonitorLogsConnector Azure Monitor Logs コネクタ
csharpsdk ログアナリティクス クエリ API。
Draft-Monitor Azure portal でのログ検索アラートの作成。
グラファナ Grafana コネクタ。
IbizaExtension Azure ポータルでの Log Analytics のエクスペリエンス。
infraInsights/container コンテナーの分析情報。
infraInsights/vm VM の分析情報。
LogAnalyticsExtension(ログ分析拡張機能) Azure ダッシュボード
LogAnalyticsPSClient ログアナリティクス クエリ API。
OmsAnalyticsPBI Log Analytics の Power BI との統合。
PowerBIConnector (パワーBIコネクター) Log Analytics の Power BI との統合。
セントネル調査クエリ Sentinel。
センチネル-データ収集集約器 Sentinel。
センチネル-アナリティクス管理-カスタマー問い合わせ Sentinel。
未知 ログアナリティクス クエリ API。
アップデート管理 更新の管理。

考慮事項

  • クエリは、ユーザー コンテキストで実行された場合にのみログに記録されます。 Azure 内のサービス間のものは、ログに記録されません。 この例外に含まれる 2 つの主なクエリのセットとしては、課金計算と自動アラート実行があります。 アラートの場合、スケジュールされたアラート クエリそのものだけは記録されず、アラート作成画面でのアラートの初回の実行はユーザー コンテキストで実行されるため、監査の目的で使用できます。
  • Azure Data Explorer プロキシからのクエリではパフォーマンス統計を使用することはできません。 これらのクエリのその他すべてのデータは、引き続き提供されます。
  • 文字列リテラルを難読化する文字列に対する h ヒントは、クエリ監査ログに影響しません。 クエリは、文字列が難読化されることなく、送信されたとおりにキャプチャされます。 このデータを表示するためのコンプライアンス権限を持つユーザーのみが、Log Analytics ワークスペースで利用可能なさまざまな Kubernetes RBAC または Azure RBAC モードを使用してそれを実行できるようにする必要があります。
  • 複数のワークスペースのデータを含むクエリの場合、クエリは、ユーザーがアクセスできるワークスペースでのみキャプチャされます。

コスト

Azure Diagnostics 拡張機能には料金はかかりませんが、取り込まれたデータの料金が発生する場合があります。 データの収集先については、「Azure Monitor の価格」を参照してください。

次のステップ