Other Articles

PostgreSQL Flexible Server – Enable Connection Throttling

This check ensures that connection throttling is enabled for Azure PostgreSQL Flexible Servers. Enabling connection throttling helps limit excessive or malicious connection attempts, thereby protecting server stability, performance, and availability.

Check Details

  • Resource: Azure Database for PostgreSQL Flexible Server
  • Check: Ensure Connection Throttling Is Enabled
  • Risk: If connection throttling is disabled, the server may be vulnerable to excessive connection attempts, which could lead to resource exhaustion, degraded performance, or denial-of-service conditions.

Remediation via Azure Portal

  1. Log in to the Azure Portal. Azure Portal dashboard
  2. Navigate to Azure Database for PostgreSQL flexible servers and select the affected server. PostgreSQL Flexible Server list
  3. In the left-hand menu, select Server parameters under Settings. PostgreSQL server parameters
  4. Search for the parameter connection_throttle.
  5. Ensure the value is set to ON. PostgreSQL server connection throttle
  6. Click Save to apply the configuration change.

Remediation via Azure CLI

  1. Open Azure Cloud Shell or a local terminal with Azure CLI installed. Azure Cloud Shell
  2. Check the current value of the connection_throttling parameter:

    az postgres flexible-server parameter show \
     --resource-group <resource-group> \
     --server-name <postgres-server-name> \
     --name connection_throttle.enable
    
  3. Enable connection throttling:

    az postgres flexible-server parameter set \
     --resource-group <resource-group> \
     --server-name <postgres-server-name> \
     --name connection_throttle.enable \
     --value ON
    
  4. Verify that connection throttling is enabled:

    az postgres flexible-server parameter show \
     --resource-group <resource-group> \
     --server-name <postgres-server-name> \
     --name connection_throttle.enable \
     --query value
    

Replace <resource-group> and <postgres-server-name> with your actual values. The output should return ON to confirm compliance.