Controllare la conformità dei Registri Azure Container con Criteri di Azure
Criteri di Azure è un servizio disponibile in Azure che consente di creare, assegnare e gestire definizioni di criteri. Queste definizioni dei criteri applicano regole ed effetti diversi alle risorse, in modo che le risorse rimangano conformi ai contratti di servizio e agli standard dell'azienda.
Questo articolo presenta le definizioni di criteri predefinite per Registro Azure Container. Usare queste definizioni per controllare la conformità di registri nuovi ed esistenti.
Non sono previsti addebiti per l'uso di Criteri di Azure.
Definizioni di criteri predefiniti
Le definizioni predefinite dei criteri seguenti sono specifiche di Registro Azure Container:
Nome (Portale di Azure) |
Descrizione | Effetti | Versione (GitHub) |
---|---|---|---|
[Anteprima]: Registro Contenitori deve essere con ridondanza della zona | Il Registro Contenitori può essere configurato in modo che sia ridondante o meno della zona. Quando la proprietà zoneRedundancy per un registro contenitori è impostata su "Disabilitato", significa che il Registro di sistema non è ridondante della zona. L'applicazione di questi criteri consente di garantire che registro Contenitori sia configurato in modo appropriato per la resilienza della zona, riducendo il rischio di tempi di inattività durante le interruzioni della zona. | Audit, Deny, Disabled | 1.0.0-preview |
[Anteprima]: Registro Container deve usare un endpoint servizio di rete virtuale | Questo criterio controlla i Registri Azure Container che non sono configurati per usare un endpoint servizio di rete virtuale. | Audit, Disabled | 1.0.0-preview |
Le immagini del registro contenitore in esecuzione in Azure devono avere vulnerabilità risolte (basate sulla gestione delle vulnerabilità di Microsoft Defender) | La valutazione della vulnerabilità dell'immagine del contenitore analizza il registro per individuare vulnerabilità comunemente note (CVE) e fornisce un report dettagliato sulle vulnerabilità per ogni immagine. La risoluzione delle vulnerabilità può migliorare notevolmente il comportamento di sicurezza, assicurandosi che le immagini siano sicure da usare prima della distribuzione. | AuditIfNotExists, Disabled | 1.0.1 |
Configurare i registri del contenitore per disabilitare l'autenticazione anonima. | Disabilitare il pull anonimo per il Registro di sistema in modo che i dati non siano accessibili dall'utente non autenticato. La disabilitazione di metodi di autenticazione locali come l'utente amministratore, i token di accesso con ambito repository e il pull anonimo migliorano la sicurezza assicurando che i registri contenitori richiedano esclusivamente identità di Azure Active Directory per l'autenticazione. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Modifica, disattivato | 1.0.0 |
Configurare i registri contenitori per disabilitare l'autenticazione del token del gruppo di destinatari ARM. | Disabilitare i token del gruppo di destinatari arm di Azure Active Directory per l'autenticazione nel registro. Per l'autenticazione verranno usati solo i token del gruppo di destinatari di Registro Azure Container. In questo modo è possibile usare solo i token destinati all'utilizzo nel Registro di sistema per l'autenticazione. La disabilitazione dei token del gruppo di destinatari ARM non influisce sull'autenticazione dei token di accesso con ambito o dell'utente amministratore. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Modifica, disattivato | 1.0.0 |
Configurare i registri container per disabilitare l’account amministratore locale. | Disabilitare l'account amministratore per il Registro di sistema in modo che non sia accessibile dall'amministratore locale. La disabilitazione di metodi di autenticazione locali come l'utente amministratore, i token di accesso con ambito repository e il pull anonimo migliorano la sicurezza assicurando che i registri contenitori richiedano esclusivamente identità di Azure Active Directory per l'autenticazione. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Modifica, disattivato | 1.0.1 |
Configurare i registri Container per disabilitare l'accesso alla rete pubblica | Disabilitare l'accesso alla rete pubblica per la risorsa Registro contenitori, in modo che non sia accessibile su Internet. Ciò può ridurre il rischio di perdita dei dati. Altre informazioni su https://aka.ms/acr/portal/public-network e https://aka.ms/acr/private-link. | Modifica, disattivato | 1.0.0 |
Configurare i registri contenitori per disabilitare il token di accesso con ambito repository. | Disabilitare i token di accesso con ambito repository per il registro in modo che i repository non siano accessibili dai token. La disabilitazione di metodi di autenticazione locali come l'utente amministratore, i token di accesso con ambito repository e il pull anonimo migliorano la sicurezza assicurando che i registri contenitori richiedano esclusivamente identità di Azure Active Directory per l'autenticazione. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Modifica, disattivato | 1.0.0 |
Configurare i registri Container con endpoint privati | Gli endpoint privati connettono la rete virtuale ai servizi di Azure senza un indirizzo IP pubblico all'origine o alla destinazione. Eseguendo il mapping di endpoint privati alle risorse del registro contenitori Premium, è possibile ridurre i rischi di perdita dei dati. Altre informazioni su: https://aka.ms/privateendpoints e https://aka.ms/acr/private-link | DeployIfNotExists, Disabled | 1.0.0 |
I registri contenitori devono essere crittografati con una chiave gestita dal cliente | Usare le chiavi gestite dal cliente per gestire la crittografia dei dati inattivi del contenuto dei registri. Per impostazione predefinita, i dati sono crittografati quando inattivi con chiavi gestite dal servizio, ma le chiavi gestite dal cliente sono comunemente richieste per soddisfare gli standard di conformità alle normative. Le chiavi gestite dal cliente consentono di crittografare i dati con una chiave di Azure Key Vault creata dall'utente e di sua proprietà. L'utente dispone del controllo completo e della piena responsabilità in merito al ciclo di vita della chiave, incluse le operazioni di rotazione e gestione. Per ulteriori informazioni, vedi https://aka.ms/acr/CMK. | Audit, Deny, Disabled | 1.1.2 |
I registri contenitori devono avere disabilitata l'autenticazione anonima. | Disabilitare il pull anonimo per il registro in modo che i dati non siano accessibili dall'utente non autenticato. La disabilitazione di metodi di autenticazione locali come l'utente amministratore, i token di accesso con ambito repository e il pull anonimo migliorano la sicurezza assicurando che i registri contenitori richiedano esclusivamente identità di Azure Active Directory per l'autenticazione. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Audit, Deny, Disabled | 1.0.0 |
Nei registri contenitori deve essere disabilitata l'autenticazione del token del gruppo di destinatari ARM. | Disabilitare i token del gruppo di destinatari ARM di Azure Active Directory per l'autenticazione nel registro. Per l'autenticazione verranno usati solo i token del gruppo di destinatari di Registro Azure Container. In questo modo è possibile usare solo i token destinati all'utilizzo nel Registro di sistema per l'autenticazione. La disabilitazione dei token del gruppo di destinatari ARM non influisce sull'autenticazione dei token di accesso con ambito o dell'utente amministratore. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Audit, Deny, Disabled | 1.0.0 |
Le esportazioni devono essere disabilitate per i registri contenitori | La disabilitazione delle esportazioni migliora la sicurezza assicurando che l'accesso ai dati in un registro venga eseguito esclusivamente tramite il piano dati ('docker pull'). I dati non possono essere spostati dal Registro di sistema tramite “acr import” o “acr transfer”. Per disabilitare le esportazioni, l'accesso alla rete pubblica deve essere disabilitato. Per altre informazioni, vedere https://aka.ms/acr/export-policy. | Audit, Deny, Disabled | 1.0.0 |
I registri contenitori devono avere un account amministratore locale disabilitato. | Disabilitare l'account amministratore per il Registro di sistema in modo che non sia accessibile dall'amministratore locale. La disabilitazione di metodi di autenticazione locali come l'utente amministratore, i token di accesso con ambito repository e il pull anonimo migliorano la sicurezza assicurando che i registri contenitori richiedano esclusivamente identità di Azure Active Directory per l'autenticazione. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Audit, Deny, Disabled | 1.0.1 |
Il token di accesso con ambito repository dei registri contenitori deve essere disabilitato. | Disabilitare i token di accesso con ambito repository per il registro in modo che i repository non siano accessibili dai token. La disabilitazione di metodi di autenticazione locali come l'utente amministratore, i token di accesso con ambito repository e il pull anonimo migliorano la sicurezza assicurando che i registri contenitori richiedano esclusivamente identità di Azure Active Directory per l'autenticazione. Per altre informazioni, vedere https://aka.ms/acr/authentication. | Audit, Deny, Disabled | 1.0.0 |
Gli SKU dei registri contenitore devono supportare i collegamenti privati | Collegamento privato di Azure consente di connettere la rete virtuale ai servizi di Azure senza un indirizzo IP pubblico nell'origine o nella destinazione. La piattaforma del collegamento privato gestisce la connettività tra il consumer e i servizi tramite la rete backbone di Azure. Eseguendo il mapping degli endpoint privati ai registri contenitori anziché all'intero servizio, i rischi di perdita dei dati vengono ridotti. Per altre informazioni, vedere https://aka.ms/acr/private-link. | Audit, Deny, Disabled | 1.0.0 |
I registri contenitori non devono consentire l'accesso alla rete senza restrizioni | Per impostazione predefinita, i Registri Azure Container accettano le connessioni tramite Internet dagli host in qualsiasi rete. Per proteggere i registri da potenziali minacce, consentire l'accesso solo da specifici endpoint privati, indirizzi IP pubblici o intervalli di indirizzi. Se il Registro di sistema non dispone di regole di rete configurate, verrà visualizzato nelle risorse non integre. Per ulteriori informazioni sulle regole di rete per il Registro Azure Container, vedere: https://aka.ms/acr/privatelink,https://aka.ms/acr/portal/public-network e https://aka.ms/acr/vnet. | Audit, Deny, Disabled | 2.0.0 |
I registri contenitori devono impedire la creazione di regole della cache | Disabilitare la creazione di regole della cache per Registro Azure Container per impedire il pull tramite cache. Per altre informazioni, vedere https://aka.ms/acr/cache. | Audit, Deny, Disabled | 1.0.0 |
I registri contenitori devono usare collegamenti privati | Collegamento privato di Azure consente di connettere la rete virtuale ai servizi di Azure senza un indirizzo IP pubblico nell'origine o nella destinazione. La piattaforma del collegamento privato gestisce la connettività tra il consumer e i servizi tramite la rete backbone di Azure. Il mapping degli endpoint privati ai soli registri contenitori anziché all'intero servizio, garantisce la protezione dai rischi di perdita dei dati. Per altre informazioni, vedere https://aka.ms/acr/private-link. | Audit, Disabled | 1.0.1 |
Abilitare la registrazione per gruppo di categorie per registri contenitori (microsoft.containerregistry/registries) in Hub eventi | I log delle risorse devono essere abilitati per tenere traccia delle attività e degli eventi che si verificano sulle risorse dell'utente e fornire visibilità e informazioni dettagliate su eventuali modifiche apportate. Questo criterio distribuisce un'impostazione di diagnostica usando un gruppo di categorie per instradare i log a un hub eventi per i registri contenitori (microsoft.containerregistry/registries). | DeployIfNotExists, AuditIfNotExists, Disabled | 1.2.0 |
Abilitare la registrazione per gruppo di categorie per i registri contenitori (microsoft.containerregistry/registries) in Log Analytics | I log delle risorse devono essere abilitati per tenere traccia delle attività e degli eventi che si verificano sulle risorse dell'utente e fornire visibilità e informazioni dettagliate su eventuali modifiche apportate. Questo criterio distribuisce un'impostazione di diagnostica usando un gruppo di categorie per instradare i log a un'area di lavoro Log Analytics per i registri contenitori (microsoft.containerregistry/registries). | DeployIfNotExists, AuditIfNotExists, Disabled | 1.1.0 |
Abilitare la registrazione per gruppo di categorie per i registri contenitori (microsoft.containerregistry/registries) in Archiviazione | I log delle risorse devono essere abilitati per tenere traccia delle attività e degli eventi che si verificano sulle risorse dell'utente e fornire visibilità e informazioni dettagliate su eventuali modifiche apportate. Questo criterio distribuisce un'impostazione di diagnostica usando un gruppo di categorie per instradare i log a un account di archiviazione per i registri contenitori (microsoft.containerregistry/registries). | DeployIfNotExists, AuditIfNotExists, Disabled | 1.1.0 |
L'accesso alla rete pubblica deve essere disabilitato per i registri contenitori | La disabilitazione dell'accesso alla rete pubblica migliora la sicurezza assicurando che i registri contenitori non siano esposti su Internet pubblico. La creazione di endpoint privati può limitare l'esposizione delle risorse del registro contenitori. Altre informazioni su https://aka.ms/acr/portal/public-network e https://aka.ms/acr/private-link | Audit, Deny, Disabled | 1.0.0 |
Creare assegnazioni di criteri
- Creare assegnazioni di criteri usando il portale di Azure, l'interfaccia della riga di comando di Azure, un modello di Resource Manager o gli SDK di Criteri di Azure.
- Definire l'ambito di un'assegnazione di criteri a un gruppo di risorse, a una sottoscrizione o a un gruppo di gestione di Azure. Le assegnazioni dei criteri del Registro Container si applicano ai registri contenitori esistenti e nuovi all'interno dell'ambito.
- Abilitare o disabilitare la tutela dei criteri in qualsiasi momento.
Nota
Dopo aver creato o aggiornato un'assegnazione di criteri, questa richiede del tempo per valutare le risorse nell'ambito definito. Vedere informazioni sui trigger di valutazione dei criteri.
Esaminare la conformità dei criteri
Accedere alle informazioni di conformità generate dalle assegnazioni di criteri usando il portale di Azure, gli strumenti della riga di comando di Azure o gli SDK di Criteri di Azure. Per informazioni dettagliate, vedere Ottenere i dati di conformità delle risorse di Azure.
Quando una risorsa non è conforme, i motivi possibili sono molti. Per determinare il motivo o per trovare il responsabile della modifica, vedere Determinare la non conformità.
Conformità dei criteri nel portale:
Selezionare Tutti i servizi e cercare Criterio.
Selezionare Conformità.
Usare i filtri per limitare gli stati di conformità o per cercare i criteri.
Selezionare un criterio per esaminare i dettagli e gli eventi di conformità aggregati. Se necessario, selezionare un registro specifico per la conformità delle risorse.
Conformità dei criteri nell'interfaccia della riga di comando di Azure
Per ottenere i dati di conformità è anche possibile usare l'interfaccia della riga di comando di Azure. Ad esempio, usare il comando elenco assegnazione az policy nell'interfaccia della riga di comando per ottenere gli ID dei criteri del Registro Azure Container applicati:
az policy assignment list --query "[?contains(displayName,'Container Registries')].{name:displayName, ID:id}" --output table
Output di esempio:
Name ID
------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------
Container Registries should not allow unrestricted network access /subscriptions/<subscriptionID>/providers/Microsoft.Authorization/policyAssignments/b4faf132dc344b84ba68a441
Container Registries should be encrypted with a Customer-Managed Key (CMK) /subscriptions/<subscriptionID>/providers/Microsoft.Authorization/policyAssignments/cce1ed4f38a147ad994ab60a
Eseguire quindi elenco stato az policy per restituire lo stato di conformità in formato JSON per tutte le risorse con un ID criterio specifico:
az policy state list \
--resource <policyID>
In alternativa, eseguire elenco stato az policy per restituire lo stato di conformità in formato JSON di una specifica risorsa del Registro di sistema, ad esempio myregistry:
az policy state list \
--resource myregistry \
--namespace Microsoft.ContainerRegistry \
--resource-type registries \
--resource-group myresourcegroup
Passaggi successivi
Altre informazioni sulle definizioni e gli effetti di Criteri di Azure.
Creare una definizione di criteri personalizzata.
Altre informazioni sulle funzionalità di governance in Azure.