turbot/azure_compliance

Control: 5.2.2 Ensure server parameter 'log_checkpoints' is set to 'ON' for PostgreSQL flexible Server

Description

Enable log_checkpoints on PostgreSQL flexible servers.

Enabling log_checkpoints helps the PostgreSQL Database to Log each checkpoint, which in turn generates query and error logs. However, access to transaction logs is not supported. Query and error logs can be used to identify, troubleshoot, and repair configuration errors and sub-optimal performance.

Remediation

From Azure Portal

  1. From Azure Home select the Portal Menu.
  2. Go to Azure Database for PostgreSQL flexible servers.
  3. For each database, under Settings, click Server parameters.
  4. In the filter bar, type log_checkpoints.
  5. Set the VALUE for log_checkpoints to ON.
  6. Click Save.

From Azure CLI

Use the below command to enable log_checkpoints:

az postgres flexible-server parameter set --resource-group <resourceGroup> --server-name <serverName> --name log_checkpoints --value on

From PowerShell

Update-AzPostgreSqlFlexibleServerConfiguration -ResourceGroupName <resourceGroup> -ServerName <serverName> -Name log_checkpoints -Value on

Default Value

By default log_checkpoints is enabled (set to on).

Usage

Run the control in your terminal:

powerpipe control run azure_compliance.control.cis_v300_5_2_2

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run azure_compliance.control.cis_v300_5_2_2 --share

SQL

This control uses a named query:

postgres_flexible_server_log_checkpoints_on

Tags