AKS cluster should disable local accounts

High Azure General aks-aks-cluster-disable-local

Applies to

  • Microsoft.ContainerService/managedClusters

What CGPulse checks

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

How to fix it

Disable local accounts to enforce Azure AD-only authentication and full audit logging. In Azure Portal: AKS > Cluster configuration > disable local accounts. See: https://learn.microsoft.com/en-us/azure/aks/managed-azure-ad#disable-local-accounts

Careful: All kubectl access will require Azure AD authentication after this. Ensure AAD integration is configured first

CLI

az aks update --ids "{id}" --disable-local-accounts

Terraform

resource "azurerm_kubernetes_cluster" "{name}" {
  name                   = "{name}"
  resource_group_name    = "{rg}"
  location               = var.location
  dns_prefix             = "{name}"
  local_account_disabled = true
  azure_active_directory {
    managed            = true
    azure_rbac_enabled = true
  }
  default_node_pool {
    name       = "default"
    node_count = 1
    vm_size    = "Standard_D2s_v5"
  }
  identity { type = "SystemAssigned" }
}

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.