sicurezza container microservizi Portshift

La sicurezza, sostiene giustamente Portshift, società specializzata in cybersecurity del cloud e dei cluster Kubernetes, è un imperativo.

Le pratiche di sviluppo native del cloud, con la loro dipendenza da container e microservizi, stanno diventando sempre più popolari nelle organizzazioni, tuttavia, benché questo approccio presenti molti vantaggi, comporta anche alcuni gravi rischi per la sicurezza.

Sebbene i container rendano più semplice la gestione dei microservizi, gli ambienti di sviluppo che fanno affidamento sui container sono talmente cresciuti in complessità che gestirli senza sistemi di orchestrazione come Kubernetes è diventato piuttosto impraticabile.

I sistemi di orchestrazione in generale, e Kubernetes in particolare, vengono generalmente utilizzati in tutte le fasi del ciclo di vita del software, dallo sviluppo alla distribuzione. Gli ambienti di sviluppo nativi del cloud, sostiene Portshift, sono però soggetti a una serie di minacce alla sicurezza.

È per questo che, secondo gli esperti di Portshift, è essenziale implementare le migliori politiche di sicurezza per microservizi e container, dalla pipeline CI / CD in avanti.

Portshift stessa ha presentato una sua lista composta da sette best practice per la cybersecurity di microservizi e container, che riprendiamo qui di seguito.

sicurezza container microservizi Portshift

1. Utilizza il Role-Based Access Control (RBAC): fin dall’inizio, è meglio limitare l’accesso ai container istituendo un’autorizzazione di questo tipo. RBAC supporta la concessione a determinati gruppi di utenti di privilegi di sola lettura del codice, per evitare i pericoli involontari causati da “citizen programmers”. Ridurre le probabilità di “permission creep” (un utente che mantiene i vecchi privilegi e al contempo acquisisce nuovi privilegi quando cambia posizione), limita gli utenti a un solo ruolo.

2. Immagini sicure con un registro: l’uso di un registro come Jfrog o DockerHub aiuta gli sviluppatori DevOps ad archiviare e gestire le immagini. Questi registri supportano RBAC e possono essere configurati per autenticare che i contenitori provengono da fonti attendibili, mantenere un elenco di vulnerabilità note e contrassegnare le immagini vulnerabili.

3. Disabilita l’accesso alla shell: è prassi comune lasciare l’accesso alla shell ai contenitori in modo che questi possano essere modificati in produzione. Tuttavia, ciò aumenta la loro vulnerabilità agli attacchi. Per evitare ciò, è possibile creare contenitori immutabili che possono essere gestiti solo dalle API.

4. Adotta strumenti specializzati per la sicurezza dei container. La sicurezza dei container solleva nuovi problemi che devono essere risolti, e ora ci sono strumenti progettati appositamente per questi problemi. Come minimo, utilizza strumenti che gestiscono la scansione e la gestione delle immagini oltre a mantenere un registro trusted. In particolare, utilizza la scansione dinamica del codice per assicurarti che nessun codice nocivo sia stato inserito nei container nella pipeline CI/CD.

5. Insisti sulla visibilità: la visibilità è un problema importante nelle architetture distribuite ed è ancora più una sfida per le applicazioni native del cloud, a causa della moltitudine di container e microservizi e connessioni tra loro. Pertanto, è essenziale, sempre secondo Portshift, utilizzare una piattaforma o uno strumento che offra visibilità.

6. Adotta l’automazione. L’automazione offre coerenza e maggiore precisione in generale, e in un ambiente nativo nel cloud, aiuta a rendere sicuro lo sviluppo senza soluzione di continuità, anziché lasciarlo come attività che deve essere ricordata dagli sviluppatori ogni volta. Esistono numerosi strumenti, come Portshift e Jfrog, che possono essere integrati nella pipeline CI/CD.

7. Usa una mesh di servizi per massimizzare la sicurezza. Una service mesh offre servizi di monitoraggio, scalabilità e alta disponibilità per le applicazioni moderne tramite API anziché tramite appliance discrete. Sebbene non sia necessaria una mesh di servizi per proteggere i container, Portshift consiglia di utilizzarne una per i seguenti motivi: una maggiore trasparenza, che consente di comprendere meglio i link di comunicazione tra i container; il miglioramento della sicurezza delle comunicazioni tra i servizi, compreso il transit layer service reciproco (TLS); crittografia, poiché una mesh di servizi supporta la gestione di chiavi, certificati e configurazione TLS.

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato sulle novità tecnologiche

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome