Load Balancer should use Standard SKU

High Azure General loadbalancers-load-balancer-standard-sku

Applies to

  • Microsoft.Network/loadBalancers

What CGPulse checks

A resource passes this rule when sku.name must equal Standard. Anything else is reported as a finding with the evaluated property value attached as evidence.

How to fix it

Upgrade to Standard SKU for zone redundancy and better security defaults. In Azure Portal: create new Standard Load Balancer and migrate. See: https://learn.microsoft.com/en-us/azure/load-balancer/load-balancer-overview#skus

CLI

az network lb show --ids "{id}" --query "sku.name" -o tsv

Bicep

// SKU cannot be changed — create new Load Balancer with Standard SKU
resource lb 'Microsoft.Network/loadBalancers@2024-01-01' = {{
  name: '{name}'
  location: resourceGroup().location
  sku: {{
    name: 'Standard'
    tier: 'Regional'
  }}
  properties: {{
    frontendIPConfigurations: [
      {{
        name: 'frontend'
        properties: {{
          publicIPAddress: {{
            id: '<public-ip-resource-id>'
          }}
        }}
      }}
    ]
  }}
}}

Terraform

resource "azurerm_lb" "{name}" {
  name                = "{name}"
  resource_group_name = "{rg}"
  location            = var.location
  sku                 = "Standard"
  frontend_ip_configuration {
    name                 = "frontend"
    public_ip_address_id = "<public-ip-id>"
  }
}

Compliance frameworks

Is your environment compliant with this rule?

CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.

Run a free scan

Related Azure rules

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please reload the page.