Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Uno dei maggiori vantaggi di Criteri di Azure è rappresentato dalle informazioni dettagliate e dai controlli che offre sulle risorse in una sottoscrizione o in un gruppo di gestione di sottoscrizioni. Questo controllo può impedire la creazione di risorse nella posizione errata, applicare l'utilizzo comune e coerente dei tag o controllare le risorse esistenti per le configurazioni e le impostazioni appropriate. In tutti i casi Criteri di Azure genera dati che permettono di comprendere lo stato di conformità dell'ambiente in uso.
Prima di esaminare i dati di conformità, è importante comprendere gli stati di conformità in Criteri di Azure.
Esistono diversi modi per accedere alle informazioni sulla conformità generate dalle assegnazioni di criteri e iniziative:
Prima di esaminare i metodi disponibili per creare report sulla conformità, è opportuno comprendere quando vengono aggiornate le informazioni sulla conformità e la frequenza e gli eventi che attivano un ciclo di valutazione.
Trigger di valutazione
I risultati di un ciclo di valutazione completato sono disponibili nel provider di risorse Microsoft.PolicyInsights attraverso le operazioni PolicyStates e PolicyEvents. Per altre informazioni sulle operazioni dell'API REST di Azure Policy Insights, vedere Azure Policy Insights.
Le valutazioni delle iniziative e dei criteri assegnati sono il risultato di diversi eventi:
- Un criterio o un'iniziativa è stata appena assegnata a un ambito. L'applicazione dell'assegnazione all'ambito definito richiede circa cinque minuti, quindi viene avviato il ciclo di valutazione per le risorse applicabili rispetto ai criteri o all'iniziativa appena assegnati. A seconda degli effetti usati, le risorse vengono contrassegnate come conformi, non conformi, esenti o sconosciute. Un criterio o un'iniziativa estesa valutata rispetto a un ambito di risorse di grandi dimensioni può richiedere tempo, pertanto non è prevedibile quando verrà completato il ciclo di valutazione. Al termine, i risultati di conformità aggiornati sono disponibili nel portale e negli SDK (Software Development Kit).
- Un criterio o un'iniziativa già assegnata a un ambito viene aggiornata. Il ciclo di valutazione e la tempistica per questo scenario sono gli stessi di quelli per una nuova assegnazione a un ambito.
- Una risorsa viene distribuita o aggiornata all'interno di un ambito con un'assegnazione tramite Azure Resource Manager, API REST o un SDK supportato. In questo scenario l'evento di effetto (Append, Audit, Deny, Deploy) e le informazioni sullo stato conforme per la singola risorsa diventano disponibili nel portale e negli SDK dopo circa 15 minuti. Questo evento non causa una valutazione di altre risorse.
- Una sottoscrizione (tipo di risorsa
Microsoft.Resources/subscriptions) viene creata o spostata nella gerarchia di gruppi di gestione con una definizione di criteri assegnata che fa riferimento al tipo di risorsa della sottoscrizione. La valutazione degli effetti supportati dalla sottoscrizione (audit, auditIfNotExist, deployIfNotExists, modify), la registrazione ed eventuali azioni correttive richiedono circa 30 minuti. - Viene creata, aggiornata o eliminata un'esenzione dai criteri. In questo scenario l'assegnazione corrispondente viene valutata per l'ambito di esenzione definito.
- Ciclo di valutazione della conformità standard. Le assegnazioni vengono automaticamente rivalutate ogni 24 ore. Un criterio o un'iniziativa estesa di molte risorse può richiedere tempo, pertanto non è prevedibile quando verrà completato il ciclo di valutazione. Dopo il completamento, i risultati di conformità aggiornati sono disponibili nel portale e negli SDK.
- Il provider di risorse di configurazione macchina viene aggiornato con i dettagli relativi alla conformità da una risorsa gestita.
- Analisi on-demand.
Note
Per impostazione predefinita, Criteri di Azure esenta dalla valutazione dei criteri tutte le risorse nel provider di risorse Microsoft.Resources, ad eccezione delle sottoscrizioni e dei gruppi di risorse, che possono essere valutate.
Analisi di valutazione su richiesta
È possibile avviare un'analisi di valutazione per una sottoscrizione o un gruppo di risorse con REST, interfaccia della riga di comando di Azure, Azure PowerShell, Criteri di Azure estensione per Visual Studio Code o Azure Policy Compliance Scan GitHub Action. Le analisi su richiesta sono un processo asincrono che richiede molto tempo per l'esecuzione perché le risorse vengono valutate rispetto a tutti i criteri assegnati.
Note
Non tutti i provider di risorse di Azure supportano le analisi di valutazione su richiesta. Ad esempio, Gestione rete virtuale di Azure attualmente non supporta trigger manuali o il ciclo di valutazione della conformità dei criteri standard (analisi giornaliere).
Analisi di valutazione su richiesta con REST
Poiché si tratta di un processo asincrono, l'endpoint REST per avviare l'analisi non attende finché l'analisi non è stata completata per rispondere. Invece, fornisce un URI per eseguire una query dello stato della valutazione richiesta.
In ogni URI dell'API REST vengono usate variabili che è necessario sostituire con i propri valori:
-
{resourceGroupName}: sostituire con il nome del gruppo di risorse. -
{subscriptionId}: sostituire con l'ID della sottoscrizione.
L'analisi supporta la valutazione delle risorse in una sottoscrizione o in un gruppo di risorse. Avviare un'analisi per ambito con un comando POST dell'API REST usando le strutture URI seguenti:
Usare il comando seguente per valutare una sottoscrizione. È possibile eseguire il comando dal browser in Stati dei criteri - Attivare la valutazione della sottoscrizione usando l'opzione Prova.
POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation?api-version=2019-10-01
Usare il comando seguente per valutare un gruppo di risorse. È possibile eseguire il comando dal browser in Stati dei criteri - Attivare la valutazione del gruppo di risorse usando l'opzione Prova.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation?api-version=2019-10-01
Le chiamate all'API REST della sottoscrizione e del gruppo di risorse restituiscono uno stato accettato 202. L'intestazione della risposta include una proprietà location con il formato seguente:
https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/asyncOperationResults/{ResourceContainerGUID}?api-version=2019-10-01
{ResourceContainerGUID} viene generato in modo statico per l'ambito richiesto. Se un ambito sta già eseguendo un'analisi su richiesta, non viene avviata una nuova analisi. Al contrario, alla nuova richiesta viene fornito lo stesso URI {ResourceContainerGUID}location per lo stato. Un comando GET dell'API REST per l'URI location restituisce un 202-accepted mentre è in corso la valutazione. Quando l'analisi di valutazione è stata completata, restituisce uno stato 200 OK. Il corpo di un'analisi completata è una risposta JSON con lo stato: succeeded.
Analisi della valutazione su richiesta con l'interfaccia della riga di comando di Azure
L'analisi di conformità viene avviata con il comando az policy state trigger-scan.
Per impostazione predefinita, az policy state trigger-scan avvia una valutazione per tutte le risorse nella sottoscrizione corrente. Per avviare una valutazione in un gruppo di risorse specifico, usare il parametro resource-group. Nell'esempio seguente viene avviata un'analisi di conformità nella sottoscrizione corrente per un gruppo di risorse. Sostituire resourceGroupName con il nome del gruppo di risorse:
az policy state trigger-scan --resource-group "resourceGroupName"
È possibile scegliere di non attendere il completamento del processo asincrono prima di continuare con il parametro no-wait.
Analisi della valutazione su richiesta con Azure PowerShell
L'analisi di conformità viene avviata con il cmdlet Start-AzPolicyComplianceScan.
Per impostazione predefinita, Start-AzPolicyComplianceScan avvia una valutazione per tutte le risorse nella sottoscrizione corrente. Per avviare una valutazione in un gruppo di risorse specifico, usare il parametro ResourceGroupName. Nell'esempio seguente viene avviata un'analisi di conformità nella sottoscrizione corrente per un gruppo di risorse. Sostituire resourceGroupName con il nome del gruppo di risorse:
Start-AzPolicyComplianceScan -ResourceGroupName 'resourceGroupName'
È possibile fare in modo che PowerShell attenda il completamento della chiamata asincrona prima di fornire l'output dei risultati o che venga eseguito in background come processo. Per usare un processo di PowerShell per eseguire l'analisi della conformità in background, usare il parametro AsJob e impostare il valore su un oggetto, come $job nell'esempio seguente:
$job = Start-AzPolicyComplianceScan -AsJob
È possibile controllare lo stato del processo controllando l'oggetto $job. Il processo è di tipo Microsoft.Azure.Commands.Common.AzureLongRunningJob. Usare Get-Member sull'oggetto $job per visualizzare le proprietà e i metodi disponibili.
Durante l'esecuzione dell'analisi di conformità, il controllo dell'oggetto $job restituisce i risultati seguenti:
$job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
2 Long Running O... AzureLongRunni... Running True localhost Start-AzPolicyCompliance...
Al termine dell'analisi di conformità, la proprietà StateStato viene modificata in Completato.
Analisi di valutazione su richiesta con Visual Studio Code
L'estensione Criteri di Azure per Visual Studio Code è in grado di eseguire un'analisi di valutazione per una risorsa specifica. Questa analisi è un processo sincrono, a differenza dei metodi di Azure PowerShell e REST. Per informazioni dettagliate e passaggi, vedere Valutazione su richiesta con l'estensione VS Code.
Analisi di valutazione su richiesta con GitHub Actions
Usare l'azione di analisi della conformità di Criteri di Azure per attivare un'analisi di valutazione della conformità su richiesta dal flusso di lavoro di GitHub su una o più risorse, gruppi di risorse o sottoscrizioni e modificare il percorso del flusso di lavoro in base allo stato di conformità di tali risorse. Si può anche configurare il flusso di lavoro per l'esecuzione a un'ora pianificata per ottenere lo stato di conformità più recente in un momento appropriato. Facoltativamente, queste azioni GitHub possono generare un report sullo stato di conformità delle risorse analizzate per un'ulteriore analisi o a scopo di archiviazione.
L'esempio seguente esegue un'analisi della conformità per una sottoscrizione. In scopes usare l'ID sottoscrizione.
on:
schedule:
- cron: '0 8 * * *' # runs every morning 8am
jobs:
assess-policy-compliance:
runs-on: ubuntu-latest
steps:
- name: Login to Azure
uses: azure/login@v2
with:
creds: ${{secrets.AZURE_CREDENTIALS}}
- name: Check for resource compliance
uses: azure/policy-compliance-scan@v0
with:
scopes: |
/subscriptions/aaaa6a6a-bb7b-cc8c-dd9d-eeeeee0e0e0e
Per altre informazioni ed esempi di flusso di lavoro, vedere il repository di GitHub Actions per Analisi conformità di Criteri di Azure.
Portale
Il portale di Azure illustra un'esperienza grafica di visualizzazione e comprensione dello stato di conformità nell'ambiente in uso. Nella pagina Criteri l'opzione Panoramica fornisce i dettagli per gli ambiti disponibili sulla conformità dei criteri e delle iniziative. Oltre allo stato di conformità e al conteggio per assegnazione, contiene un grafico che mostra la conformità negli ultimi sette giorni. La pagina Conformità contiene buona parte di queste stesse informazioni (eccetto il grafico), ma fornisce altre opzioni di ordinamento e applicazione di filtri.
Dal momento che un criterio o un'iniziativa può essere assegnata a diversi ambiti, la tabella include l'ambito di ogni assegnazione e il tipo di definizione assegnato. È anche indicato il numero di risorse non conformi e di criteri non conformi per ogni assegnazione. Quando si seleziona un criterio o un'iniziativa nella tabella, viene fornita un'analisi più approfondita della conformità per quella particolare assegnazione.
L'elenco delle risorse nella scheda Conformità risorsa mostra lo stato di valutazione delle risorse esistenti per l'assegnazione corrente. Per impostazione predefinita, la scheda ha tutti gli stati di conformità, ma può essere filtrata.
Per le risorse in modalità Resource Provider, nella scheda Conformità risorse, selezionando la risorsa si aprono i dettagli di conformità del componente. Questa pagina offre anche schede per visualizzare i criteri assegnati a questa risorsa e la cronologia delle modifiche.
Tornando alla pagina di conformità delle risorse, fare clic con il tasto destro del mouse sulla riga dell'evento di cui si desidera raccogliere ulteriori dettagli e selezionare Mostra log delle attività. La pagina del log attività viene aperta e prefiltrata con la ricerca contenente i dettagli per l'assegnazione e gli eventi. Il log attività offre un contesto aggiuntivo e altre informazioni su tali eventi.
Note
I risultati di conformità, anche nello stesso formato illustrato in precedenza, possono essere esportati dal portale con query di Azure Resource Graph.
Riga di comando
Le stesse informazioni disponibili nel portale possono essere recuperate con l'API REST, Azure PowerShell e l'interfaccia della riga di comando di Azure.
API REST
Per informazioni dettagliate sull'API REST, vedere le informazioni di riferimento su Criteri di Azure. Le pagine di riferimento dell'API REST hanno un'opzione Prova per ogni operazione che consente di eseguire il comando in un browser. È anche possibile usare l'interfaccia della riga di comando di Azure o il client API REST preferito per eseguire i comandi.
Riepilogare i risultati
Con l'API REST è possibile riepilogare in base a contenitore, definizione o assegnazione. Di seguito è riportato un esempio di riepilogo a livello di sottoscrizione tramite il riepilogo per sottoscrizione di Azure Policy Insights:
POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/latest/summarize?api-version=2019-10-01
L'output riepiloga la sottoscrizione e la conformità riepilogata si trovano nelle proprietà nonCompliantResources e nonCompliantPolicies. La richiesta fornisce maggiori dettagli, tra cui ogni assegnazione che ha costituito i numeri non conformi e le informazioni sulla definizione per ogni assegnazione. Ogni oggetto criteri nella gerarchia fornisce un queryResultsUri che può essere usato per ottenere altri dettagli a quel livello.
Eseguire query per le risorse
Nell'esempio precedente value.policyAssignments.policyDefinitions.results.queryResultsUri fornisce un URI di esempio per tutte le risorse non conformi per una definizione di criteri specifica. Nel valore $filter ComplianceState è uguale (eq) a NonCompliant, PolicyAssignmentId viene specificato per la definizione dei criteri e quindi policyDefinitionId stesso. Il motivo dell'inclusione di PolicyAssignmentId nel filtro è che PolicyDefinitionId potrebbe essere presente in diverse assegnazioni di criteri o iniziative con ambiti diversi. Specificando sia PolicyAssignmentId che PolicyDefinitionId, è possibile indicare in modo esplicito i risultati cercati. In precedenza, per PolicyStates è stato usato latest, che imposta automaticamente un intervallo di tempo from e to delle ultime 24 ore.
Esempio del valore queryResultsUri:
https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/latest/queryResults?api-version=2019-10-01&$from=2025-01-01 04:28:22Z&$to=2025-02-10 04:28:22Z&$filter=ComplianceState eq 'NonCompliant' and PolicyAssignmentId eq '/subscriptions/{subscriptionId}/resourcegroups/rg-tags/providers/microsoft.authorization/policyassignments/37ce239ae4304622914f0c77' and PolicyDefinitionId eq '/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62'
Visualizzare eventi
Quando si crea o si aggiorna una risorsa, viene generato un risultato di valutazione dei criteri. I risultati sono chiamati eventi criteri. Usare l'URI seguente per visualizzare gli eventi criteri recenti associati alla sottoscrizione.
https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyEvents/default/queryResults?api-version=2019-10-01
Per altre informazioni sull'esecuzione di query sugli eventi dei criteri, vedere Criteri di Azure Eventi.
Interfaccia della riga di comando di Azure
Il gruppo di comandi dell'interfaccia della riga di comando di Azure per Criteri di Azure copre la maggior parte delle operazioni disponibili in REST o Azure PowerShell. Per l'elenco completo dei comandi disponibili, vedere az policy.
Ottenere il riepilogo dello stato per i criteri più assegnati con il maggior numero di risorse non conformi.
az policy state summarize --top 1
Ottenere il record di stato per la risorsa valutata più di recente (l'impostazione predefinita è per timestamp in ordine decrescente).
az policy state list --top 1
Ottenere i dettagli per tutte le risorse di rete virtuale non conformi.
az policy state list --filter "ResourceType eq 'Microsoft.Network/virtualNetworks'"
Ottenere gli eventi correlati alle risorse di rete virtuale non conformi che si sono verificati dopo una data specifica. Usare il parametro from con una data in formato ISO 8601.
az policy event list --filter "ResourceType eq 'Microsoft.Network/virtualNetworks'" --from '2025-02-10T00:00:00Z'
Azure PowerShell
È possibile eseguire i comandi seguenti da Azure Cloud Shell.
Ottenere il riepilogo dello stato per i criteri più assegnati con il maggior numero di risorse non conformi.
Get-AzPolicyStateSummary -Top 1
Ottenere il record di stato per la risorsa valutata più di recente. Il valore predefinito dell'output è in base al timestamp in ordine decrescente.
Get-AzPolicyState -Top 1
Ottenere i dettagli per tutte le risorse di rete virtuale non conformi.
Get-AzPolicyState -Filter "ResourceType eq '/Microsoft.Network/virtualNetworks'"
Ottenere gli eventi correlati alle risorse di rete virtuale non conformi che si sono verificati dopo una data specifica. Usare il parametro From con una data in formato ISO 8601.
Get-AzPolicyEvent -Filter "ResourceType eq '/Microsoft.Network/virtualNetworks'" -From '2025-02-10'
L'output include una proprietà PrincipalOid che può essere usata per ottenere un utente specifico con il cmdlet Get-AzADUser di Azure PowerShell. Sostituire {principalOid} con il valore ottenuto dal comando precedente.
(Get-AzADUser -ObjectId {principalOid}).DisplayName
Log di Monitoraggio di Azure
Se si dispone di un'area di lavoro Log Analytics con AzureActivity dalla soluzione di Analisi log attività collegata alla sottoscrizione in uso, è anche possibile visualizzare i risultati di non conformità dal ciclo di valutazione di risorse nuove e aggiornate usando semplici query Kusto e la tabella AzureActivity. Con i dettagli dei log di Monitoraggio di Azure è possibile configurare gli avvisi in modo da individuare le risorse non conformi.
Azure Resource Graph
I record di conformità vengono archiviati in Azure Resource Graph (ARG). I dati possono essere esportati da query di Azure Resource Graph per formare dashboard personalizzati in base agli ambiti e ai criteri di interesse. Esaminare le query di esempio per esportare i dati di conformità tramite Azure Resource Graph.
Passaggi successivi
- Vedere gli esempi in Esempi di Criteri di Azure.
- Vedere la struttura delle definizioni di Criteri di Azure.
- Leggere Informazioni sugli effetti di Criteri.
- Informazioni su come creare criteri a livello di codice.
- Leggere le informazioni su come correggere le risorse non conformi.
- Rivedere le caratteristiche di un gruppo di gestione illustrate in Organizzare le risorse con i gruppi di gestione di Azure.