Abilitare la distribuzione controllata per AKS tramite l'API cluster gestito

Questo articolo illustra come configurare la distribuzione controllata per Servizio Azure Kubernetes (AKS) usando l'API del cluster gestito. È anche possibile installare il sensore Defender per Contenitori tramite Helm.

Il gated deployment utilizza un controller di ammissione per valutare le immagini dei container prima di ammetterle in un cluster Kubernetes. Per AKS, l'agente di distribuzione controllata necessita dell'accesso in lettura ai registri di Registro Azure Container (ACR) utilizzati dal cluster, in modo da poter accedere agli artefatti dei risultati delle vulnerabilità generati da Microsoft Defender for Containers.

Prima di configurare la distribuzione controllata tramite l'API del cluster gestito, abilita i componenti di Defender for Containers necessari per il cluster AKS e gli ACR.

Per fornire l'accesso ACR necessario, creare un'identità gestita assegnata dall'utente, assegnargli le autorizzazioni di lettura per le ACR pertinenti, configurare le credenziali di identità federate e fare riferimento all'identità gestita nell'API del cluster gestito.

Prerequisiti

Prima di iniziare, assicurarsi di:

  • Si dispone di una sottoscrizione Microsoft Azure. Se non si ha una sottoscrizione di Azure, è possibile iscriversi per ottenere una sottoscrizione gratuita.

  • Defender per il cloud è abilitato nella sottoscrizione Azure.

  • Defender for Containers è abilitato per la sottoscrizione o le sottoscrizioni Azure che contengono il cluster AKS e i registri contenitori di Azure (ACR), con i componenti seguenti abilitati:

    • sensore Defender con filtro di sicurezza
    • Accesso al registro con rilevamenti di sicurezza

    Note

    Basta installare il security gating una sola volta. La prima volta che si abilita l'interruttore specifico, viene installato il controllo della sicurezza. Successivamente, la barriera di sicurezza è già installata.

    Quando l'installazione viene eseguita di nuovo, il sistema rileva questo e non esegue alcuna operazione. Se si tenta di installarlo di nuovo tramite l'API, l'operazione ha esito negativo perché esiste già un controllo di sicurezza.

    Screenshot che mostra il controllo della sicurezza attivato.

  • Il cluster AKS ha:

  • Permesso di creare e assegnare un'identità gestita assegnata dall'utente.

  • Permesso di assegnare il ruolo AcrPull , o un ruolo di lettura equivalente, su tutti gli ACR utilizzati dal cluster.

Configurare l'identità gestita

Esegui i seguenti passaggi per configurare l'identità gestita per la distribuzione controllata:

  1. Creare un'identità del servizio gestita (MSI) che l'agente di distribuzione vincolata utilizza.

  2. Assegna il ruolo AcrPull o un ruolo di lettura equivalente al MSI su tutti gli ACR utilizzati dal cluster.

  3. Aggiungere una credenziale di identità federata (FIC, Federated Identity Credential) all'identità del servizio gestita che consente all'agente di distribuzione controllata di eseguire l'autenticazione usando l'identità del carico di lavoro del servizio Azure Kubernetes con i parametri FIC seguenti:

    • Emittente: URL dell'emittente OIDC del servizio Azure Kubernetes
    • Oggetto: account del servizio usato dall'agente di distribuzione controllata system:serviceaccount:kube-system:defender-admission-controller-serviceaccount.
    • Gruppo di destinatari: api://AzureADTokenExchange
  4. Nella sezione securityGating della configurazione dell'API del cluster gestito, impostare l'elemento objectId dell'identità del servizio gestita nel parametro delle identità nella sezione di controllo della sicurezza della configurazione dell'API del cluster gestito.

    Screenshot della configurazione dell'API del cluster gestito che mostra il parametro delle identità nella sezione controllo della sicurezza.

    L'impostazione dell'objectId dell'MSI nel parametro identities garantisce che l'agente di distribuzione controllato possa usare l'MSI in fase di esecuzione.

Passo successivo