Habilitación de la implementación controlada para AKS mediante la API del clúster administrado

En este artículo se muestra cómo configurar la implementación controlada para Azure Kubernetes Service (AKS) mediante la API del clúster administrado. También puede instalar el sensor Defender for Containers mediante Helm.

El despliegue con puerta utiliza un controlador de admisión para evaluar imágenes de contenedor antes de admitirlas en un clúster Kubernetes. Para AKS, el agente de despliegue con acceso limitado necesita acceso de lectura al Azure Container Registry (ACRs) que utiliza el clúster para poder acceder a artefactos de hallazgo de vulnerabilidades que genera Microsoft Defender for Containers.

Antes de configurar la implementación con control de acceso mediante la API de clúster administrado, habilite los componentes necesarios de Defender for Containers para el clúster de AKS y las instancias de ACR.

Para proporcionar el acceso ACR necesario, cree una identidad administrada asignada por el usuario, asígnele permisos de lectura en las ACR pertinentes, configure las credenciales de identidad federada y haga referencia a la identidad administrada en la API del clúster administrado.

Prerequisites

Antes de comenzar, asegúrese de que:

  • Tiene una suscripción de Microsoft Azure. Si no tiene una suscripción de Azure, puede registrarse para obtener una suscripción gratuita.

  • Defender for Cloud está habilitado en la suscripción de Azure.

  • Defender for Containers está habilitado para la suscripción de Azure o las suscripciones de Azure que contienen su clúster de AKS y Azure Container Registry (ACR), con los siguientes componentes habilitados:

    • sensor Defender con control de seguridad
    • Acceso al Registro con hallazgos de seguridad

    Note

    Solo necesitas instalar una barrera de seguridad una vez. La primera vez que se habilite la opción de control de seguridad, instalará los controles de seguridad. Una vez hecho eso, el control de seguridad ya está instalado.

    Cuando la instalación se ejecuta de nuevo, el sistema lo detecta y no hace nada. Si intenta instalarlo de nuevo a través de la API, se produce un error porque ya existen restricciones de seguridad.

    Captura de pantalla que muestra que el control de seguridad está activado.

  • El clúster de AKS tiene:

  • Permiso para crear y asignar una identidad gestionada asignada por el usuario.

  • Permiso para asignar el rol AcrPull , o un rol de lectura equivalente, a todos los ACR usados por el clúster.

Configuración de la identidad administrada

Realiza los siguientes pasos para configurar la identidad gestionada para el despliegue con bloqueo:

  1. Cree una identidad de servicio administrada (MSI) para que la use el agente de implementación controlado.

  2. Asigna el rol AcrPull o un rol de lectura equivalente al MSI en todos los ACR que utiliza el clúster.

  3. Agregue una credencial de identidad federada (FIC) al MSI que permita que el agente de implementación cerrado se autentique mediante la identidad de carga de trabajo de AKS, con los siguientes parámetros FIC:

    • Emisor: la dirección URL del emisor de OIDC de AKS
    • Asunto: la cuenta de servicio utilizada por el agente de implementación controladasystem:serviceaccount:kube-system:defender-admission-controller-serviceaccount.
    • Audiencia: api://AzureADTokenExchange
  4. En la sección securityGating de la configuración de la API del clúster administrado, establezca el objectId de MSI en el parámetro identities en la sección securityGating de la configuración de la API del clúster administrado.

    Captura de pantalla de la configuración de api de clúster administrado que muestra el parámetro identities en la sección de acceso de seguridad.

    Configurar el objectId del MSI en el parámetro identities garantiza que el agente de implementación con control de acceso pueda usar el MSI en tiempo de ejecución.

Paso siguiente