Databricks 진단 로그 수집 점검

Databricks의 필요한 감사 이벤트를 수집하고 로그 대상의 접근 권한과 보존 기간을 관리하세요.

설명

Databricks는 데이터 처리, 노트북 실행과 클러스터 변경이 집중되는 서비스입니다. 필요한 활동 로그가 빠지면 사고 조사와 권한 오남용 추적이 어려워질 수 있습니다.

Azure 진단 설정에서는 Workspace가 지원하는 로그 카테고리를 선택해 외부 대상으로 전송합니다. 감사 로그 시스템 테이블과 수집 범위가 같지는 않으므로 필요한 이벤트가 어느 경로에서 제공되는지 확인해야 합니다.

잠재적 영향

  • 클러스터 변경이나 작업 실행의 원인과 작업 주체를 확인하기 어려울 수 있습니다.
  • 로그에 민감한 정보가 포함될 수 있으므로 수집 대상의 접근 권한이 넓으면 별도의 정보 노출 위험이 생깁니다.

해결 방법

  • Workspace에 진단 설정을 연결하고 인증, 파일 작업, 클러스터, 노트북, 작업 실행 등 조사에 필요한 카테고리를 선택하세요. 지원되는 카테고리와 Premium 계층 요구를 확인하세요.
  • Log Analytics, Storage Account 또는 Event Hub 같은 승인된 대상을 구성하세요. 로그의 실제 도착, 접근 권한과 보존 기간을 확인하세요.
  • 필요한 계정 수준 이벤트나 진단 설정에서 제공하지 않는 이벤트는 감사 로그 시스템 테이블 등 해당 수집 경로를 별도로 구성하세요.

예시

Workspace와 주요 카테고리의 진단 설정을 비교합니다. 참조하는 리소스 그룹과 Log Analytics Workspace는 별도로 준비하세요.

변경 전

hcl
resource "azurerm_databricks_workspace" "example" {
  name                = "secure-databricks-ws"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
  sku                 = "premium"
}

Workspace만 정의되어 있습니다. 다른 설정이나 감사 로그 수집 경로도 함께 확인하세요.

변경 후

hcl
resource "azurerm_monitor_diagnostic_setting" "example" {
  name                       = "databricks-diagnostic-logs"
  target_resource_id         = azurerm_databricks_workspace.example.id
  log_analytics_workspace_id = azurerm_log_analytics_workspace.example.id

  enabled_log {
    category = "accounts"
  }

  enabled_log {
    category = "Filesystem"
  }

  enabled_log {
    category = "clusters"
  }

  enabled_log {
    category = "notebook"
  }

  enabled_log {
    category = "jobs"
  }
}

resource "azurerm_databricks_workspace" "example" {
  name                = "secure-databricks-ws"
  location            = azurerm_resource_group.example.location
  resource_group_name = azurerm_resource_group.example.name
  sku                 = "premium"
}

다섯 카테고리를 Log Analytics로 보냅니다. 이 목록이 모든 감사 이벤트를 포함하는 것은 아니므로 실제 조사 범위와 수신 결과를 확인하세요.

참조