Skip to content

Deshabilitar el usuario adminstrador para ACR#

Seguridad · Container Registry · Rule · 2020_06 · Critico

Sinopsis#

Usar identidades de Azure AD en lugar de usar el usuario administrador del registro.

Descripción#

Azure Container Registry (ACR) incluye una cuenta de usuario administrador incorporada. La cuenta de usuario administrador es una cuenta de usuario única con acceso administrativo al registro. Esta cuenta proporciona acceso de usuario único para pruebas y desarrollo tempranos. La cuenta de usuario administrador no está diseñada para usarse con registros de contenedores de producción.

En su lugar, utilice el control de acceso basado en roles (RBAC). RBAC se puede usar para delegar permisos de registro a una identidad de Azure AD (AAD).

Recomendación#

Considere deshabilitar la cuenta de usuario administrador y solo use la autenticación basada en identidad para las operaciones de registro.

Ejemplos#

Configurar con plantilla de ARM#

Para implementar Container Registries, pasa la siguiente regla:

  • Establezca properties.adminUserEnabled a false.

Por ejemplo:

Azure Template snippet
{
  "type": "Microsoft.ContainerRegistry/registries",
  "apiVersion": "2023-07-01",
  "name": "[parameters('name')]",
  "location": "[parameters('location')]",
  "sku": {
    "name": "Premium"
  },
  "identity": {
    "type": "SystemAssigned"
  },
  "properties": {
    "adminUserEnabled": false,
    "policies": {
      "trustPolicy": {
        "status": "enabled",
        "type": "Notary"
      },
      "retentionPolicy": {
        "days": 30,
        "status": "enabled"
      }
    }
  }
}

Configurar con Bicep#

Para implementar Container Registries, pasa la siguiente regla:

  • Establezca properties.adminUserEnabled a false.

Por ejemplo:

Azure Bicep snippet
resource registry 'Microsoft.ContainerRegistry/registries@2023-07-01' = {
  name: name
  location: location
  sku: {
    name: 'Premium'
  }
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    adminUserEnabled: false
    policies: {
      trustPolicy: {
        status: 'enabled'
        type: 'Notary'
      }
      retentionPolicy: {
        days: 30
        status: 'enabled'
      }
    }
  }
}

Configurar con Azure CLI#

Azure CLI snippet
az acr update -n '<name>' -g '<resource_group>' --admin-enabled false

Configurar con Azure PowerShell#

Azure PowerShell snippet
Update-AzContainerRegistry -ResourceGroupName '<resource_group>' -Name '<name>' -DisableAdminUser

Enlaces#

Comments