Perché il monitoraggio dell’identità

In Microsoft Entra ID il monitoraggio è la base per investigazioni di sicurezza, audit di conformità e troubleshooting degli accessi. L’amministratore delle identità deve sapere quale log risponde a quale domanda, come filtrarlo e — soprattutto — come conservarlo oltre la retention nativa. I dati vivono nella sezione Monitoring del portale (Audit logs, Sign-in logs, Provisioning logs) e sono esportabili altrove tramite i diagnostic settings.

Audit log: chi ha fatto cosa

L’audit log registra le modifiche al tenant: creazione utenti, reset password, assegnazione ruoli, cambi di membership di gruppo, aggiornamenti alle app registrations e alle policy. Ogni voce risponde alla domanda “chi ha fatto cosa, quando e con quale esito”. I campi chiave per l’investigazione sono:

  • Category e Activity (es. “Add member to role”)
  • Initiated by (actor: utente o service principal)
  • Target(s) (l’oggetto modificato)
  • Status (success/failure) e Date/time

È lo strumento giusto quando devi capire chi ha modificato una configurazione, non chi ha effettuato un accesso.

Sign-in log: chi ha effettuato l’accesso

Il sign-in log traccia i tentativi di autenticazione. Attenzione: esistono quattro tipi di sign-in distinti, ciascuno in una scheda separata, ed è un tema d’esame ricorrente:

  • Interactive: l’utente si autentica attivamente (inserisce credenziali, MFA).
  • Non-interactive: sign-in effettuati per conto dell’utente da un client (token refresh, accessi silenziosi). Sono ad alto volume.
  • Service principal: applicazioni/service principal che si autenticano con proprio secret o certificato, senza utente.
  • Managed identity: risorse Azure che accedono a Entra ID senza credenziali gestite manualmente.

Per l’investigazione filtra su User, Application, Status, Conditional Access (quali policy hanno agito), IP address, Location e soprattutto il failure reason con il relativo sign-in error code, utile per distinguere una password errata da un blocco Conditional Access o da un MFA fallito.

Diagnostic settings: esportare i log

Questo è il punto architetturale centrale. Dal portale, in Diagnostic settings, scegli quali log-stream inviare (AuditLogs, SignInLogs, NonInteractiveUserSignInLogs, ServicePrincipalSignInLogs, ManagedIdentitySignInLogs, RiskyUsers, ecc.) verso tre destinazioni, da selezionare in base allo scenario:

  • Log Analytics workspace → quando serve query KQL, alerting, correlazione con Microsoft Sentinel e uso dei workbook. È la scelta per analisi e indagine.
  • Storage account → quando l’obiettivo è archiviazione a basso costo e long-term retention per compliance (es. conservazione pluriennale).
  • Event Hub → quando devi fare streaming dei log verso un SIEM di terze parti (Splunk, QRadar) o pipeline esterne.

Le tre destinazioni non si escludono: puoi attivarle insieme (es. Log Analytics per l’analisi + Storage per l’archivio).

Workbook e report di Identity Protection

I workbook (basati su Log Analytics) forniscono dashboard preconfezionate — Sign-ins, Conditional Access insights, Sensitive operations — per visualizzare i dati esportati senza scrivere KQL da zero. Microsoft Entra ID Protection (P2) aggiunge i report Risky users, Risky sign-ins e Risk detections: anche questi flussi si esportano via diagnostic settings, così un rilevamento di rischio può generare un alert in Sentinel o essere conservato oltre la finestra nativa.

La retention nativa è limitata

Punto cruciale: la conservazione dentro Entra ID è breve. Con licenze P1/P2 i log (audit e sign-in) restano 30 giorni; con licenza gratuita solo 7 giorni (e il sign-in log richiede almeno P1). Superata la finestra, i dati vengono cancellati automaticamente. Quindi per audit, forensics o compliance che richiedono mesi o anni devi esportare con un diagnostic setting prima che i dati scadano: attivarlo dopo un incidente non recupera lo storico perduto.

Trappole tipiche d’esame

  • “Serve conoscere quale amministratore ha modificato un ruolo”Audit log, non il sign-in log (che copre solo autenticazioni).
  • “Conservare i sign-in log per 1 anno / analizzarli con KQL e alert”Diagnostic setting verso Log Analytics (analisi) o Storage account (archivio economico); la retention nativa di 30 giorni non basta.
  • “Investigare accessi di un’applicazione senza utente / di una risorsa Azure” → scheda Service principal sign-ins / Managed identity sign-ins, non Interactive.
  • “Inviare i log a Splunk/QRadar in tempo reale” → destinazione Event Hub, non Storage né Log Analytics.
  • “Vedere perché un utente è stato bloccato all’accesso”Sign-in log, colonna Conditional Access + failure reason/error code; i report di rischio stanno in Entra ID Protection (P2).