変更要約: AZ-500 第4章を深掘り(図ja化・比較表/シナリオ/FAQ/ひっかけ/深掘り段落を全節に追加)
4.1ログ・監視とセキュリティアラート
セキュリティ運用の土台となる Azure Monitor・Log Analytics ワークスペース・診断設定 を理解します。何が起きたかを記録し、必要なログを集約・分析・保持することが、検知と調査の前提です。
攻撃を検知し調査するには、まず「何が起きたか」の記録が必要です。Azure では 診断設定 で各リソースのログを Log Analytics ワークスペース に集約し、分析します。
4.1.1ログの集約と分析
- Log Analytics ワークスペース:ログを集約・保持し、KQL(Kusto クエリ言語)で分析する基盤。
- 診断設定:各リソースのログ/メトリックをワークスペースやストレージ、Event Hub へ送る設定。
- アクティビティログ:サブスクリプションでの操作(誰が何を変更したか)を記録する。
- アラート:メトリックやログのクエリ条件で発報し、アクショングループで通知/自動対応する。
「ログを集約し KQL で分析=Log Analytics ワークスペース」「リソースのログ送付先を決める=診断設定」「誰が何を変更したか=アクティビティログ」「条件で発報し通知=アラート+アクショングループ」 は AZ-500 で頻出です。Sentinel もこのワークスペース上で動きます。
Entra ID のサインインログや監査ログも診断設定で Log Analytics へ送れます。ID 関連の調査に役立ちます。
診断設定の送付先は 3 つに使い分けます。Log Analytics ワークスペース は KQL でのクエリ・アラート・Sentinel 連携に、ストレージアカウント は長期保管・低コストのアーカイブに、Event Hub は外部 SIEM やリアルタイム連携への中継に向きます。ログの種類も理解が要ります。アクティビティログ は管理操作(コントロールプレーン:作成/変更/削除)、リソースログ はリソース内部の動作(データプレーン:診断設定で有効化)、メトリック は数値時系列です。アラートは メトリックアラート(しきい値)と ログ(スケジュール)アラート(KQL の結果件数)に分かれ、いずれも アクショングループ(メール・SMS・Webhook・Logic Apps・Automation Runbook)で通知や自動対応につなぎます。保持期間はワークスペースの設定(無料枠は短期、長期は アーカイブ層 や Storage へエクスポート)で管理し、監査の改ざん防止には 不変(イミュータブル)ストレージ を併用します。
| 送付先 | 向く用途 | クエリ |
|---|---|---|
| Log Analytics ワークスペース | 分析・アラート・Sentinel | KQL で可能 |
| ストレージアカウント | 長期保管・低コストアーカイブ | 直接は不可 |
| Event Hub | 外部 SIEM・リアルタイム連携 | 中継のみ |
シナリオ: 監査要件で「すべての操作ログを 1 年以上、改ざんできない形で保持」する必要がある。→ 分析用途は Log Analytics に送りつつ、診断設定でストレージアカウントにも出力し、不変(イミュータブル)ポリシーを設定します。リアルタイムに外部 SIEM へも渡すなら Event Hub を追加します。
FAQ: Q. アクティビティログとリソースログの違いは? → A. アクティビティログは「サブスクリプションで誰が何を操作したか」(コントロールプレーン)、リソースログは「リソース内部で何が起きたか」(データプレーン)で、後者は診断設定で有効化が必要です。Q. メトリックアラートとログアラートの使い分けは? → A. CPU 等の数値しきい値はメトリックアラート、特定パターンの発生回数(KQL)はログアラートです。
ひっかけ: 「診断設定をしなくてもリソースログは自動で Log Analytics に入る」は誤りです。アクティビティログは既定で見えますが、リソースログ(データプレーン)は診断設定で明示的に送付先を指定しない限り集約されません。
4.1.2この節のまとめ
- Log Analytics=ログ集約・KQL 分析、診断設定=送付先指定
- アラート+アクショングループ=条件で発報し通知/自動対応
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. Azure の各リソースのログを集約・保持し、KQL で分析するための基盤はどれですか?
Q2. あるリソースのログを Log Analytics ワークスペースへ送るために構成するものはどれですか?
Q3. サブスクリプションで「誰がいつ何のリソースを変更したか」を確認できるログはどれですか?

