Diagnostic Setting のログカテゴリの確認

対象リソースが対応するログカテゴリを選び、必要なイベントが収集されることを確認してください。

説明

Azure の診断設定は、選択したログとメトリックを指定の送信先へ送ります。調査に必要なカテゴリが抜けると、重要な運用・セキュリティイベントを中央の保存先で確認しにくくなるおそれがあります。

カテゴリは対象によって異なります。Administrative、Alert、Policy、Security はサブスクリプションの Activity Log のカテゴリであり、すべての Azure リソースに共通する一覧ではありません。たとえば Key Vault の監査ログには AuditEvent を使用します。

想定される影響

  • 管理操作やセキュリティイベントを中央で調査するための記録が不足する場合があります。
  • 非対応のカテゴリや誤った送信先を指定すると、設定の適用や必要なログの配信に失敗するおそれがあります。

対処方法

  • 対象が対応するカテゴリまたはカテゴリグループを確認し、運用・セキュリティ要件に合わせて enabled_log を設定してください。
  • サブスクリプションの Activity Log では、必要な管理・アラート・ポリシー・セキュリティカテゴリを選んでください。個別リソースには、そのサービスのカテゴリを使用してください。
  • 承認済みの送信先を指定し、イベント発生後の受信、アクセス権と保持期間を確認してください。

例

変更前はカテゴリと送信先がない、不完全な Key Vault の診断設定です。変更後は四つのカテゴリに対応するサブスクリプションの Activity Log を対象とします。参照するサブスクリプションとワークスペースは別途用意してください。

変更前

hcl
resource "azurerm_monitor_diagnostic_setting" "example" {
  name               = "diagnostic-settings-name"
  target_resource_id = azurerm_key_vault.example.id
}

この状態ではログ収集の設定は完成していません。

変更後

hcl
resource "azurerm_monitor_diagnostic_setting" "example" {
  name               = "diagnostic-settings-name"
  target_resource_id = data.azurerm_subscription.example.id
  log_analytics_workspace_id = azurerm_log_analytics_workspace.example.id

  enabled_log {
    category = "Administrative"
  }

  enabled_log {
    category = "Alert"
  }

  enabled_log {
    category = "Policy"
  }

  enabled_log {
    category = "Security"
  }
}

サブスクリプションの選択したカテゴリを Log Analytics に送ります。この一覧を Key Vault などの個別リソースへそのまま適用しないでください。

参考資料