No centro de administração do Microsoft Entra, abra Identidade → Monitoramento & saúde → Logs de entrada, configure seus filtros e escolha Baixar → JSON. Para grandes ou repetidas extrações, use Microsoft Graph: GET /auditLogs/signIns. De qualquer forma, você só obtém o que ainda é retido: 7 dias no Entra ID Free, 30 dias com P1 ou P2.
Os logs de entrada mostram quem autenticou, de onde, para qual aplicativo e se MFA e Acesso Condicional foram aplicados. Em ataques dirigidos por identidade, isso é a maior parte da história. O Prime Core tem 170 regras de detecção para dados de entrada do Entra ID, mapeadas para 113 técnicas MITRE ATT&CK. Entre elas: spray de senha (T1110.003), fadiga de MFA (T1621) e logins com credenciais roubadas na nuvem (T1078.004).
Antes de começar
A retenção é curta. Se a atividade que você procura é mais antiga que 7 ou 30 dias, o portal e o Graph não a terão. O único lugar onde ela ainda pode existir é onde quer que suas configurações de diagnóstico enviem logs de entrada: um espaço de trabalho do Log Analytics, Microsoft Sentinel ou uma conta de armazenamento. Veja nosso [guia de exportação do Microsoft Sentinel] para essa rota.
Funções. O Leitor de Relatórios é a função de menor privilégio que pode ler logs de entrada. Leitor de Segurança e Leitor Global também funcionam.
Existem quatro tipos de entradas. Usuário interativo, usuário não interativo, principal de serviço e identidade gerida, cada um com sua própria aba no portal. A reprodução de tokens e o abuso de tokens de atualização tendem a aparecer em não interativo, que as pessoas esquecem de exportar.
Opção 1: Baixar do portal
- Vá para Logs de entrada e escolha a aba (comece com interativo, depois não interativo).
- Set Data e quaisquer filtros (usuário, aplicativo, status).
- Escolha Baixar, então JSON.
O portal limita quantos registros um único download inclui. [PROVA: confirme o limite atual.] Para intervalos grandes, divida por dia ou use o Graph.
Opção 2: Microsoft Graph PowerShell
Isso puxa JSON bruto da API, segue paginação e escreve uma entrada por linha:
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)
O endpoint v1.0 retorna entradas interativas. Entradas não interativas e principais de serviço precisam do endpoint beta com um filtro signInEventTypes. A leitura de entradas através da API também depende do nível da licença do seu tenant.
Os carimbos de data/hora são UTC.
O que procurar
| Campo ou valor | O que isso te diz |
|---|---|
| status.errorCode 50126 | Nome de usuário ou senha incorretos. Muitos desses por muitos usuários significa spray |
| status.errorCode 50053 | Conta bloqueada por smart lockout |
| status.errorCode 500121 | Falha ou negação do MFA; um aumento desses é fadiga de MFA |
| clientAppUsed = IMAP, POP, SMTP, “Outros clientes” | Autenticação legada que ignora MFA |
| conditionalAccessStatus | Se o CA aplicou, passou ou falhou |
| riskLevelDuringSignIn, localização, ipAddress | Origens de risco ou desconhecidas |
O padrão que vale a pena parar: uma série de falhas 50126 por várias contas de um intervalo de IP, então um sucesso para uma delas.
Envie para upload, sanitize e revise no LogTotal
- Envie para upload. Abra logtotal.com e solte o arquivo JSON.
- Sanitize. [what gets masked: UPNs, display names, IPs, device names, tenant and object IDs]. Look it over before you continue.
- Revise.
Quando algo dá errado
| Sintoma | Causa provável | Fix |
|---|---|---|
| Nada mais antigo que uma semana ou um mês | Retenção para o nível da sua licença | Verifique Log Analytics, Sentinel ou armazenamento se as configurações de diagnóstico estavam ativadas |
| Graph returns 403 | Falta de consentimento para AuditLog.Read.All, função ou licença | Conceda consentimento; verifique sua função e licença do tenant |
| A exportação tem apenas entradas interativas | Outros tipos residem em abas separadas ou no Graph beta | Exporte cada aba; use o endpoint beta |
| O download contém menos registros do que o portal mostra | Limite de download do portal | Divida por dia ou use o Graph |
FAQ
E os logs de auditoria do Entra?
Esses são logs diferentes: alterações de diretório como novos usuários, atribuições de funções e consentimentos de aplicativos. Mesma área do portal, Logs de auditoria. No Graph, é /auditLogs/directoryAudits. Em um incidente, geralmente você quer ambos.
Posso obter entradas do Sentinel em vez disso?
Sim, se o conector Entra ID estiver ativado: elas estão nas tabelas SigninLogs e AADNonInteractiveUserSignInLogs, com a retenção que seu espaço de trabalho possui.