Activer le déploiement contrôlé pour AKS à l’aide de l’API de cluster managé

Cet article explique comment configurer le déploiement contrôlé pour Azure Kubernetes Service (AKS) à l’aide de l’API de cluster managé. Vous pouvez également installer le capteur Defender pour conteneurs à l’aide de Helm.

Le déploiement avec contrôle d’admission utilise un contrôleur d’admission pour évaluer les images de conteneurs avant de les autoriser dans un cluster Kubernetes. Pour AKS, l’agent de déploiement verrouillé doit avoir un accès en lecture à l’Azure Container Registry (ACRs) utilisé par le cluster afin de pouvoir accéder aux artefacts de détection de vulnérabilités générés par Microsoft Defender for Containers.

Avant de configurer le déploiement contrôlé à l’aide de l’API de cluster managé, activez le Defender requis pour les composants conteneurs pour le cluster AKS et les ACR.

Pour fournir l’accès ACR requis, créez une identité managée affectée par l’utilisateur, attribuez-lui des autorisations de lecture sur les ACR appropriées, configurez les informations d’identification d’identité fédérée et référencez l’identité managée dans l’API de cluster managé.

Prerequisites

Avant de commencer, vérifiez que :

  • Vous disposez d’un abonnement Microsoft Azure. Si vous n’avez pas d’abonnement Azure, vous pouvez vous inscrire à un abonnement gratuit.

  • Defender for Cloud est activé sur votre abonnement Azure.

  • Defender pour conteneurs est activé pour l’abonnement ou les abonnements Azure qui contiennent votre cluster AKS et Azure registres de conteneurs (ACR), avec les composants suivants activés :

    • capteur Defender avec filtrage de sécurité
    • Accès au Registre avec les résultats de sécurité

    Note

    Vous n’avez besoin d’installer le contrôle de sécurité qu’une seule fois. Lors de la première activation du commutateur de contrôle de sécurité, celui-ci procède à son installation. Par la suite, le contrôle de sécurité est déjà installé et opérationnel.

    Lorsque l’installation s’exécute à nouveau, le système détecte cela et ne fait rien. Si vous essayez de l’installer à nouveau par le biais de l’API, cela échoue, car la vérification de la sécurité existe déjà.

    Capture d'écran montrant que la fonction de sécurité est activée.

  • Votre cluster AKS a :

  • Permission de créer et d’attribuer une identité gérée attribuée par l’utilisateur.

  • Permission d’attribuer le rôle AcrPull , ou un rôle de lecture équivalent, à tous les ACR utilisés par le cluster.

Configurer l’identité managée

Effectuez les étapes suivantes pour configurer l’identité gérée en vue d’un déploiement verrouillé :

  1. Créez une identité de service managé (MSI) utilisée par l’agent de déploiement contrôlé.

  2. Attribuez le rôle AcrPull ou un rôle de lecture équivalent au MSI sur tous les ACR utilisés par le cluster.

  3. Ajoutez des informations d’identification d’identité fédérée (FIC) à la MSI qui permettent à l’agent de déploiement contrôlé de s’authentifier en travaillant avec AKS Workload Identity, avec les paramètres FIC suivants :

    • Émetteur : URL de l’émetteur AKS OIDC
    • Objet : compte de service utilisé par l’agent system:serviceaccount:kube-system:defender-admission-controller-serviceaccountde déploiement contrôlé .
    • Audience : api://AzureADTokenExchange
  4. Dans la section securityGating de la configuration de l’API du cluster géré, définissez l’objectId de l’identité MSI dans le paramètre identities de cette section.

    Capture d’écran de la configuration de l’API de cluster managé montrant le paramètre identités dans la section de gestion de la sécurité.

    Définir le objectId du MSI dans le paramètre identities garantit que l’agent de déploiement contrôlé peut utiliser le MSI à l’exécution.

Étape suivante