Procedure consigliate per la gestione e la sicurezza delle immagini del contenitore nel servizio Azure Kubernetes
La sicurezza delle immagini dei contenitori e dei contenitori è una priorità importante quando si sviluppano ed eseguono applicazioni nel servizio Azure Kubernetes. I contenitori con immagini di base non aggiornate o runtime di applicazioni non patchate introducono rischi per la sicurezza e possibili vettori di attacco. È possibile ridurre al minimo questi rischi integrando ed eseguendo strumenti di analisi e correzione nei contenitori in fase di compilazione e runtime. In precedenza si rileva la vulnerabilità o l'immagine di base obsoleta, più sicura è l'applicazione.
In questo articolo per “contenitori” si intendono sia le immagini del contenitore archiviate in un registro contenitori, sia i contenitori in esecuzione.
Questo articolo illustra in particolare come proteggere i contenitori nel servizio Azure Kubernetes. Scopri come:
- Cercare e correggere le vulnerabilità delle immagini.
- Attivare e ridistribuire automaticamente le immagini del contenitore quando un'immagine di base viene aggiornata.
- È anche possibile leggere le procedure consigliate per la sicurezza dei cluster e la sicurezza dei pod.
- È possibile usare la sicurezza dei contenitori in Microsoft Defender per il cloud per analizzare i contenitori per individuare le vulnerabilità. L'integrazione di Registro Azure Container con Microsoft Defender per il cloud consente di proteggere le immagini e il registro dalle vulnerabilità.
Proteggere le immagini e il runtime
Materiale sussidiario sulle procedure consigliate
- Analizzare le immagini del contenitore per le vulnerabilità.
- Distribuire solo immagini convalidate.
- Aggiornare regolarmente le immagini di base e il runtime dell'applicazione.
- Ridistribuire i carichi di lavoro nel cluster del servizio Azure Kubernetes.
Quando si adottano carichi di lavoro basati su contenitori, si desidera verificare la sicurezza delle immagini e dei runtime utilizzati per creare le proprie applicazioni. Per evitare di introdurre vulnerabilità di sicurezza nelle distribuzioni, è possibile usare le procedure consigliate seguenti:
- Includere nel flusso di lavoro di distribuzione un processo per analizzare le immagini del contenitore usando strumenti, ad esempio Twistlock o Aqua.
- Consentire solo la distribuzione di immagini verificate.
Ad esempio, è possibile utilizzare una pipeline di integrazione e distribuzione continua (CI/CD) per automatizzare le scansioni delle immagini, la verifica e le distribuzioni. Registro Azure Container include queste funzionalità di analisi delle vulnerabilità.
Compilare automaticamente nuove immagini all'aggiornamento dell'immagine di base
Materiale sussidiario sulle procedure consigliate
Quando si usano immagini di base per le immagini dell'applicazione, usare l'automazione per compilare nuove immagini quando l'immagine di base viene aggiornata. Poiché le immagini di base aggiornate di solito includono correzioni di sicurezza, aggiornare tutte le immagini dei contenitori delle applicazioni a valle.
Ogni volta che si aggiorna un'immagine di base, è necessario aggiornare anche le immagini dei contenitori a valle. Integrare questo processo di compilazione in pipeline di validazione e distribuzione come Azure Pipelines o Jenkins. Queste pipeline assicurano che le applicazioni continuino a funzionare sulle immagini aggiornate. Una volta convalidate le immagini dei contenitori delle applicazioni, è possibile aggiornare le distribuzioni AKS per eseguire le immagini sicure più recenti.
Le immagini del contenitore possono essere aggiornate automaticamente anche da Attività del Registro Azure Container quando l'immagine di base viene aggiornata. Questa funzionalità consente di creare alcune immagini di base e mantenerle aggiornate con correzioni di bug e sicurezza.
Per altre informazioni sugli aggiornamenti delle immagini di base, vedere Automatizzare la compilazione di immagini in caso di aggiornamento dell'immagine di base con ACR Tasks.
Passaggi successivi
In questo articolo è stato illustrato in particolare come proteggere i contenitori. Per implementare alcune di queste aree, vedere gli articoli seguenti:
Azure Kubernetes Service