Azure PostgreSQL 접속 로그 설정 점검

PostgreSQL 접속 시도와 성공한 연결을 조사할 수 있도록 필요한 로그를 수집하세요.

설명

접속 로그는 연결 시도와 성공한 인증·인가 기록을 통해 누가 언제 데이터베이스에 연결했는지 조사하는 데 도움이 됩니다. 이 로그가 없으면 예상하지 못한 연결 증가나 비정상 접근 패턴을 추적하기 어려울 수 있습니다. 접속 로그가 전체 쿼리 감사 기록을 대신하지는 않습니다.

잠재적 영향

  • 비정상 연결 패턴을 늦게 발견할 수 있습니다.
  • 사고 후 어떤 계정이 언제 접속했는지 추적하기 어려워질 수 있습니다.

해결 방법

사용하는 PostgreSQL 버전에 맞는 log_connections 설정으로 필요한 접속 이벤트를 기록하세요. Flexible Server에서 적용값과 실제 로그 수집·보존을 확인하고 민감한 로그에 대한 접근을 제한하세요. 상세 쿼리 감사가 필요하면 별도로 구성하세요.

예시

변경 전은 종료된 Single Server의 구성입니다. 변경 후는 log_connections의 불리언 on 설정을 지원하는 버전의 기존 Flexible Server 예제입니다.

변경 전

hcl
resource "azurerm_postgresql_configuration" "example" {
  name                = "log_connections"
  resource_group_name = data.azurerm_resource_group.example.name
  server_name         = azurerm_postgresql_server.example.name
  value               = "OFF"
}

변경 후

hcl
resource "azurerm_postgresql_flexible_server_configuration" "example" {
  name      = "log_connections"
  server_id = azurerm_postgresql_flexible_server.example.id
  value     = "on"
}

변경 후에는 접속 로깅을 활성화합니다. 이 설정이 접근을 차단하지는 않으므로 인증과 권한 관리도 별도로 유지하세요.

참조