Key Vault should restrict public network access

High Azure General keyvault-no-public-access

Applies to

  • Microsoft.KeyVault/vaults

What CGPulse checks

A resource passes this rule when networkAcls.defaultAction must equal Deny. Anything else is reported as a finding with the evaluated property value attached as evidence.

How to fix it

Restrict network access by setting default action to Deny and adding allowed networks. In Azure Portal: Key Vault > Networking > set Default action to Deny. See: https://learn.microsoft.com/en-us/azure/key-vault/general/network-security

Careful: Disabling public access blocks all connections not routed through private endpoints or VNet

CLI

az keyvault update --ids "{id}" --default-action Deny

Terraform

resource "azurerm_key_vault" "{name}" {
  name                       = "{name}"
  resource_group_name        = "{rg}"
  location                   = var.location
  tenant_id                  = data.azurerm_client_config.current.tenant_id
  sku_name                   = "standard"
  network_acls {
    default_action = "Deny"
    bypass         = "AzureServices"
  }
}

Compliance frameworks

Vendor documentation

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.