Come Esportare i Log di Accesso di Microsoft Entra ID

Come Esportare i Log di Accesso di Microsoft Entra ID

SOC Prime Team
SOC Prime Team linkedin icon Segui

Nel centro di amministrazione di Microsoft Entra, apri Identità → Monitoraggio e salute → Registri di accesso, imposta i tuoi filtri e scegli Scarica → JSON. Per estrazioni più grandi o scriptate, usa Microsoft Graph: GET /auditLogs/signIns. In entrambi i casi, ottieni solo ciò che è ancora conservato: 7 giorni su Entra ID Free, 30 giorni con P1 o P2.

I registri di accesso mostrano chi si è autenticato, da dove, a quale app e se MFA e Accesso Condizionale sono stati utilizzati. Negli attacchi basati sull’identità, questa è la maggior parte della storia. Prime Core ha 170 regole di rilevamento per i dati di accesso di Entra ID, mappate a 113 tecniche MITRE ATT&CK. Tra queste: spraying della password (T1110.003), affaticamento MFA (T1621) e accessi con credenziali cloud rubate (T1078.004).

Inizia gratuitamente

Prima di iniziare

La conservazione è breve. Se l’attività che cerchi è più vecchia di 7 o 30 giorni, il portale e Graph non la avranno. L’unico posto in cui potrebbe esistere ancora è ovunque le tue impostazioni diagnostiche inviino i registri di accesso: uno spazio di lavoro Log Analytics, Microsoft Sentinel o un account di archiviazione. Vedi la nostra [guida all’esportazione di Microsoft Sentinel] per quella soluzione.

Ruoli. Report Reader è il ruolo meno privilegiato che può leggere i registri di accesso. Anche Security Reader e Global Reader funzionano.

Ci sono quattro tipi di accessi. Utente interattivo, utente non interattivo, principal del servizio e identità gestita hanno ciascuno la propria scheda nel portale. La riproduzione del token e l’abuso di token di aggiornamento tendono a comparire sotto non interattivo, che spesso viene dimenticato di esportare.

Opzione 1: Scarica dal portale

  1. Vai a Registri di accesso e scegli la scheda (inizia con interattivo, poi non interattivo).
  2. Set Data e tutti i filtri (utente, applicazione, stato).
  3. Scegli Scarica, poi JSON.

Il portale limita quanti record un singolo download include. [PROVA: conferma il limite attuale.] Per intervalli ampi, dividi per giorno o usa Graph.

Opzione 2: Microsoft Graph PowerShell

Questo estrae il JSON grezzo dell’API, segue il paging e scrive un accesso per linea:

Connect-MgGraph -Scopes "AuditLog.Read.All"

$uri = "https://graph.microsoft.com/v1.0/auditLogs/signIns?`$filter=createdDateTime ge 2026-10-19T00:00:00Z and createdDateTime lt 2026-10-20T00:00:00Z"

do {

    $page = Invoke-MgGraphRequest -Method GET -Uri $uri -OutputType Json | ConvertFrom-Json

    $page.value | ForEach-Object { $_ | ConvertTo-Json -Depth 10 -Compress } | Add-Content signins_1019.jsonl

    $uri = $page.'@odata.nextLink'

} while ($uri)

L’endpoint v1.0 restituisce accessi interattivi. Gli accessi non interattivi e del principal del servizio richiedono l’endpoint beta con un filtro signInEventTypes. La lettura degli accessi tramite l’API dipende anche dal livello di licenza del tuo tenant.

I timestamp sono in UTC.

Cosa cercare

Campo o valoreCosa ti dice
status.errorCode 50126Nome utente o password errati. Molti di questi su molti utenti significa spraying
status.errorCode 50053Account bloccato dal blocco intelligente
status.errorCode 500121MFA fallito o negato; un picco di questi indica affaticamento MFA
clientAppUsed = IMAP, POP, SMTP, “Altri clienti”Autenticazione legacy che salta MFA
conditionalAccessStatusSe CA è stata applicata, superata o fallita
riskLevelDuringSignIn, location, ipAddressOrigini rischiose o sconosciute

Il modello che vale la pena fermarsi: una sequenza di fallimenti 50126 su molti account da un intervallo IP, seguito da un successo per uno di essi.

Carica, sanitizza e rivedi in LogTotal

  1. Carica. Apri logtotal.com e carica il file JSON.
  2. Sanitizza. [what gets masked: UPNs, display names, IPs, device names, tenant and object IDs]. Look it over before you continue.
  3. Rivedi. 

Quando qualcosa va storto

SintomoCausa probabileFix
Niente di più vecchio di una settimana o un meseConservazione per il livello di licenzaControlla Log Analytics, Sentinel o archiviazione se le impostazioni diagnostiche erano attive
Graph returns 403Consentimento AuditLog.Read.All mancante, ruolo o licenzaConcedi il consenso; controlla il tuo ruolo e la licenza del tenant
L’esportazione ha solo accessi interattiviAltri tipi si trovano in schede separate o nel Graph betaEsporta ogni scheda; usa l’endpoint beta
Il download contiene meno record di quanti il portale mostriLimite di download del portaleDividi per giorno, o usa Graph

FAQ

E per quanto riguarda i log di audit di Entra?

Quelli sono un altro tipo di log: modifiche di directory come nuovi utenti, assegnazioni di ruoli e consensi di app. Stessa area del portale, Registri di audit. In Graph è /auditLogs/directoryAudits. In un incidente, di solito vuoi entrambi.

Posso ottenere accessi da Sentinel invece?

Sì, se il connettore Entra ID è attivo: si trovano nelle tabelle SigninLogs e AADNonInteractiveUserSignInLogs, con qualsiasi conservazione il tuo spazio di lavoro abbia.

Unisciti alla piattaforma Detection as Code di SOC Prime per migliorare la visibilità sulle minacce più rilevanti per il tuo business. Per aiutarti a iniziare e aumentare immediatamente il valore, prenota ora un incontro con gli esperti di SOC Prime.