Sysdig
Learn Cloud Native

Sign up to receive our newsletter

Nozioni di base della sicurezza cloud in Azure

Con una fetta di mercato che supera il 20%, negli ultimi anni il cloud di Microsoft Azure è diventato uno dei principali concorrenti nel settore del cloud computing pubblico. Allo stesso tempo, però, la sicurezza del cloud di Azure è diventata un nemico di molte aziende.

Sebbene la sicurezza di Azure si riduca più o meno alle stesse prassi e agli stessi principi previsti per qualunque altra piattaforma cloud pubblica, bisogna conoscere alcune importanti distinzioni e alcune sfumature per pianificare una strategia di sicurezza adeguata per Azure. Di seguito, presentiamo una panoramica di tutti questi dettagli e analizziamo le nozioni di base della sicurezza cloud di Azure, descrivendo inoltre di alcune migliori prassi.

Il modello di responsabilità condivisa di Azure

Come tutti i cloud pubblici, Azure utilizza un modello di responsabilità condivisa per definire quali operazioni di sicurezza spettano ai clienti e quali ad Azure. Comprendere il concetto di responsabilità condivisa per Azure è il primo passo per la creazione di una strategia di sicurezza cloud che consenta di gestire le responsabilità di cui Azure non si occupa in un ambiente cloud.

Azure spiega i dettagli del suo modello di responsabilità condivisa qui, ma questi possono essere riepilogati come segue:

  • Azure si assume la maggior parte delle responsabilità di sicurezza per le offerte SaaS, fatta eccezione per i dati creati dagli utenti o per le applicazioni che i clienti distribuiscono su un servizio SaaS.
  • I clienti condividono con Azure la responsabilità di proteggere i workload distribuiti sui servizi PaaS di Azure. In questo contesto, Azure protegge l’infrastruttura fisica sottostante, ma molte delle responsabilità legate alla rete, alle identità e alla gestione degli accessi ricadono sui clienti.
  • Nei servizi IaaS di Azure, i clienti gestiscono la maggior parte delle responsabilità. Fa eccezione l’infrastruttura fisica sottostante, protetta da Azure.
  • Se i clienti integrano infrastrutture on-premise, applicazioni o dati in Azure attraverso uno dei suoi strumenti di cloud ibrido (come Azure Stack o Azure Arc), si assumono la piena responsabilità di proteggere tali risorse on-premise.

Chi conosce già i modelli di responsabilità condivisa non sarà sorpreso nel leggere queste informazioni. L’architettura della responsabilità condivisa di Azure è decisamente coerente con i modelli adottati da altri importanti provider di cloud pubblici.

Migliori prassi per la sicurezza del cloud Azure

Dopo aver individuato le responsabilità di sicurezza che spettano ai clienti in base al tipo di servizio cloud utilizzato, è ora possibile pianificare una strategia di sicurezza che consenta di soddisfare tutti gli obblighi previsti per la sicurezza di Azure.

Migliori prassi standard per la sicurezza del cloud

Molte delle migliori prassi da seguire a questo proposito sono le operazioni standard valide per tutti i principali ambienti cloud. Esse includono:

      • Utilizzo di IAM: Identity and Access Management, o IAM, è uno strumento fondamentale per la protezione dei workload nel cloud pubblico. Chi utilizza Azure deve accertarsi di utilizzare il più possibile il suo strumento IAM per gestire gli accessi alle risorse cloud in base al principio dei privilegi minimi. Come già sottolineato, Azure IAM funziona in modo leggermente diverso rispetto ad altri IAM cloud poiché si basa su Active Directory, ma è comunque possibile ottenere le stesse configurazioni di controllo granulari che si applicano generalmente ai principali cloud pubblici.
      • { "Name": "Virtual Machine Operator",
        "Id": "88888888-8888-8888-8888-888888888888",
        "IsCustom": true,
        "Description": "Can monitor and restart virtual machines.",
        "Actions": [
        "Microsoft.Storage/*/read",
        "Microsoft.Network/*/read",
        "Microsoft.Compute/*/read",
        "Microsoft.Compute/virtualMachines/start/action",
        "Microsoft.Compute/virtualMachines/restart/action",
        "Microsoft.Authorization/*/read",
        "Microsoft.ResourceHealth/availabilityStatuses/read",
        "Microsoft.Resources/subscriptions/resourceGroups/read",
        "Microsoft.Insights/alertRules/*",
        "Microsoft.Insights/diagnosticSettings/*",
        "Microsoft.Support/*"
        ],
        "NotActions": [],
        "DataActions": [],
        "NotDataActions": [],
        "AssignableScopes": [
        "/subscriptions/{subscriptionId1}",
        "/subscriptions/{subscriptionId2}",
        "/providers/Microsoft.Management/managementGroups/{groupId1}"
        ] }
        Code language: JSON / JSON with Comments (json)
      • Isolare le reti cloud: Ove possibile, utilizzare le reti virtuali di Azure e i cloud privati per isolare gli ambienti cloud a livello di rete. Questi servizi non sono disponibili per ogni tipo di workload in Azure, ma molti workload basati su IaaS e PaaS (e anche alcuni workload basati su SaaS) possono essere isolati nelle reti private o nei cloud privati virtuali.
      • Utilizzo di tag: Come molti altri cloud, Azure consente di assegnare etichette e organizzare le risorse utilizzando tag. Sebbene le risorse cloud prive di tag non siano necessariamente poco sicure, questi strumenti si rivelano vantaggiosi in termini di sicurezza perché consentono di tracciare più facilmente quali risorse cloud sono in esecuzione e dove. Inoltre, aiutano a non trascurare alcuni workload durante la configurazione dei controlli di accesso, durante il controllo dell’ambiente cloud, ecc.
      • Protezione dei dati in Azure: Oltre a utilizzare lo strumento IAM per gestire l’accesso ai dati archiviati in Azure Blob Storage o in altri servizi di archiviazione in Azure, è buona norma crittografare i dati sul cloud e i livelli di trasporto utilizzati per accedere ai dati. Azure offre anche una funzione di “blocco” degli account di archiviazione, che si rivela molto utile per evitare le manomissioni non autorizzate dei dati sul cloud.

Considerazioni particolari sulla sicurezza di Azure

Oltre alle migliori prassi generiche, esistono alcuni aspetti specifici di Azure che è necessario considerare quando si pianifica una strategia di sicurezza del cloud:

      • Capire il sistema IAM di Azure: Come già menzionato, il sistema IAM di Azure è unico nel suo genere, poiché si basa sulla Active Directory di Microsoft. Utilizzando questo strumento è possibile configurare e applicare policy molto efficaci, ma esse sono scritte e gestite in modo diverso rispetto alle policy di cloud quali AWS. Chi non ha mail lavorato con Active Directory dovrebbe studiare un po’ la Active Directory di Azure per capire il ruolo che svolge nell’IAM del cloud di Azure.
      • Uso intelligente dei servizi di cloud ibrido: Negli ultimi anni, Azure ha investito notevoli risorse nell’offerta di servizi di cloud ibrido, soprattutto con l’introduzione di Azure Stack e Azure Arc, che consentono ai clienti di gestire infrastrutture on-premise o altrimenti locate in Azure. Come già affermato, Azure si aspetta che i clienti gestiscano la maggior parte dei rischi per la sicurezza dell’infrastruttura privata, pertanto è importante non dare erroneamente per scontato che, solo perché Azure gestisce un’infrastruttura privata, la protegga.
      • Strumenti di sicurezza di Azure: Azure offre strumenti di sicurezza specifici per il cloud che aiutano gli utenti a proteggere e controllare i workload. I due strumenti principali sono Azure Security Center e Azure Defender (che fa tecnicamente parte di Azure Security Center, ma opera come server distinto). Questi servizi sono molto utili per la configurazione e la gestione di avvisi legati agli eventi di sicurezza e ai rischi di Azure e degli ambienti di cloud ibrido che includono Azure. Sebbene di solito si preferisca appoggiarsi a strumenti di sicurezza esterni per gestire i rischi di cui i servizi nativi di Azure non si occupano, bisogna familiarizzare anche con i servizi di sicurezza di base nativi offerti da Azure.

Protezione dei container su Azure

Dal momento che i container sono diventati uno dei prodotti principali offerti da Azure, vale la pena analizzare brevemente il modo in cui Azure gestisce la loro sicurezza.

Si tratta di un argomento complesso, perché Azure offre diversi servizi di questo tipo. I principali sono:

      • Azure Kubernetes Services, o AKS, un servizio gestito di Kubernetes.
      • Azure Container Instances, un container gestito che non richiede agli utenti di lavorare con Kubernetes né con altri servizi di orchestrazione.
      • Azure Red Hat OpenShift, un servizio OpenShift gestito. (OpenShift si basa su Kubernetes ma non è identico.)
      • Azure Web App for Containers, che consente agli utenti di distribuire i container velocemente senza dover gestire da soli l’orchestrazione né l’infrastruttura.

La protezione dei container in Azure dipende in larga parte da quali tra questi servizi si sceglie di utilizzare. In generale, però, le migliori prassi per i container Azure includono:

      • Scansione delle immagini dei container, perché Azure non rileverà automaticamente le vulnerabilità o il malware all’interno delle immagini.
      • Gestione degli accessi ai registri dei container, sia quando si utilizza un registro di container nativo di Azure che quando si utilizza un registro di terze parti.
      • Se l’ambiente prevede Kubernetes, è possibile utilizzare i registri di controllo, le policy RBAC e i contesti di protezione per proteggerlo. Questo aspetto è molto importante anche se si utilizza un servizio Kubernetes gestito quale AKS. Su AKS, Azure protegge quasi esclusivamente l’infrastruttura del cluster; la responsabilità di proteggere Kubernetes e i container utilizzati è in capo al cliente.
      • Controllare le configurazioni di container e Kubernetes, le distribuzioni e altri file per individuare eventuali errori che potrebbero determinare un profilo di sicurezza debole.

Conclusione

In quanto una delle principali piattaforme di cloud computing al mondo, Azure offre decine di servizi cloud che possono essere utilizzati come parte di modelli a cloud singolo, ibridi o multicloud. Tutta questa complessità fa sì che non esista una formula semplice per proteggere gli ambienti cloud di Azure.

Tuttavia, individuando i rischi per la sicurezza da gestire in base ai servizi Azure utilizzati, ricorrendo a strumenti in grado di proteggere tali servizi dagli attacchi e di rilevare le minacce quando avvengono, si otterrà il profilo di sicurezza cloud più forte possibile.