설명
Azure SQL의 서버 수준 감사 정책은 서버에 속한 데이터베이스의 활동을 기록합니다. 실제 감사 범위는 활성화된 정책과 선택한 이벤트, 로그 대상에 따라 달라집니다.
잠재적 영향
필요한 감사 기록이 없으면 계정 활동이나 변경 내역을 조사할 근거가 부족해질 수 있습니다.
해결 방법
azurerm_mssql_server_extended_auditing_policy를 대상 서버에 연결하고 저장 위치와 보존 기간을 지정하세요. 필요한 이벤트가 실제 저장되는지 확인하세요.
예시
Blob Storage에 90일간 보관하는 예시입니다. Azure Monitor에도 전송하려면 master 데이터베이스의 진단 설정이 필요하며, 예시 비밀번호는 운영에 사용하지 마세요.
변경 전
hcl
resource "azurerm_mssql_server" "example" {
name = "mssqlserver"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
version = "12.0"
administrator_login = "mradministrator"
administrator_login_password = "thisIsDog11"
}
resource "azurerm_mssql_database" "example" {
name = "example-db"
server_id = azurerm_mssql_server.example.id
}
변경 후
hcl
resource "azurerm_mssql_server" "example" {
name = "mssqlserver"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
version = "12.0"
administrator_login = "mradministrator"
administrator_login_password = "thisIsDog11"
}
resource "azurerm_mssql_server_extended_auditing_policy" "example" {
server_id = azurerm_mssql_server.example.id
blob_storage_endpoint = azurerm_storage_account.example.primary_blob_endpoint
storage_account_access_key = azurerm_storage_account.example.primary_access_key
storage_account_access_key_is_secondary = false
retention_in_days = 90
log_monitoring_enabled = true
}
resource "azurerm_mssql_database" "example" {
name = "example-db"
server_id = azurerm_mssql_server.example.id
}