/
/

Como criar um pipeline de auditoria de logins do Entra ID multi-tenant com PowerShell

por Team Ninja
How to Build a Multi-Tenant Entra ID Sign-In Audit Pipeline with PowerShell blog banner image

Resumo instantâneo

Esta postagem do blog NinjaOne oferece uma lista abrangente de comandos CMD básicos e um mergulho profundo nos comandos do Windows, com +70 comandos CMD essenciais para usuários iniciantes e avançados. Explicamos sobre comandos práticos de prompt de comando para gerenciamento de arquivos, navegação em diretórios, solução de problemas de rede, operações de disco e automação, tudo com exemplos reais para maximizar a produtividade. Seja para aprender comandos básicos CMD ou dominar ferramentas avançadas de CLI do Windows, este guia ajuda você a usar o prompt de comando com mais eficiência.

Pontos principais

  • Automatize a auditoria de logins do Entra ID: monte um pipeline de auditoria de logins do Entra ID multi-tenant com o Microsoft Graph PowerShell para automatizar a coleta de logs, padronizar filtros e gerar evidências repetíveis para auditorias de conformidade e segurança.
  • Proteja o registro do aplicativo e as permissões: use permissões de aplicativo (não delegadas) para a coleta multi-tenant sem supervisão, proteja as credenciais e garanta o consentimento do administrador em cada tenant para um acesso a dados seguro e escalável.
  • Defina um esquema consistente e enriqueça os logs de login: defina um esquema normalizado para os logs de login e enriqueça campos (geolocalização, ASN) para melhorar a precisão das detecções e alinhar a filtragem investigativa.
  • Transforme dados de auditoria em sinais de segurança: converta os dados de auditoria em sinais de segurança aplicando filtros de alto sinal (autenticação legada, falhas de MFA, sessões arriscadas) e gerando relatórios automáticos e consolidações mensais de conformidade.
  • Agende, armazene e retenha as exportações do Entra ID: implemente exportações agendadas com políticas de retenção, garantindo evidências duradouras e versionadas.

Os logs de auditoria do Microsoft Entra são a forma mais rápida de confirmar tentativas de invasão de contas, sessões arriscadas e desvios de política. Só que isso não escala bem em ambientes multi-tenant. É preciso um pipeline em PowerShell apoiado no Graph para ter coleta agendada e repetível, filtros consistentes e evidências duradouras.

Quer se aprofundar no assunto? Assista ao nosso vídeo: Como criar um pipeline de auditoria de logins do Entra ID multi-tenant com PowerShell.

Guia para aproveitar ao máximo os logs do Microsoft Entra ID

📌 Pré-requisitos:

  • O Microsoft Graph PowerShell já deve estar instalado e atualizado.
  • É preciso ter permissão para registrar aplicativos no Microsoft Entra com privilégios mínimos para relatórios de login (recomenda-se permissões de aplicativo).
  • O consentimento precisa ser registrado por tenant, e é necessária uma estratégia segura de segredos ou identidade gerenciada.
  • É preciso ter um local de armazenamento central para as exportações.
  • É preciso um espaço de trabalho de relatórios para consolidações mensais e evidências de QBR.

Passo 1: escolha as fontes e defina o esquema

Os logs de login são informações valiosas. Ao montar um pipeline de auditoria de logins do Entra multi-tenant, você precisa saber exatamente quais dados está coletando e como vai usá-los. Para isso:

  • Priorize os logs de login (usuários e entidades de serviço) e avalie se também precisa da Auditoria de Diretório para entender bem o que está acontecendo.
  • Defina um conjunto mínimo e consistente de colunas. Pode incluir: timestamp, UPN/objectId do usuário, displayName/appId do aplicativo, clientAppUsed (autenticação moderna vs. legada), IP/localização, resultado de MFA, status (códigos de erro) e correlationId. Dá para acrescentar ou remover dados conforme o seu cenário.

Ao final, você terá um plano claro dos dados que vai coletar durante a auditoria. Isso facilita as detecções e ajuda a gerar relatórios confiáveis.

Passo 2: proteja o registro do aplicativo e as permissões

Para extrair todo o valor dos dados de login do Entra, é preciso viabilizar a coleta multi-tenant sem intervenção manual, protegendo o registro do aplicativo e as permissões ativadas.

Comece registrando um aplicativo no Entra para relatórios, seguindo estes passos:

  1. Acesse o centro de administração do Microsoft Entra e faça login.
  2. Vá até Entra ID > Registros de aplicativo > Novo registro.
  3. Defina um nome para o aplicativo de relatórios.
  4. Em Tipos de conta com suporte, especifique quem pode usar o aplicativo. As opções disponíveis são:
    • Contas apenas neste diretório organizacional
    • Contas em qualquer diretório organizacional
    • Contas em qualquer diretório organizacional e contas pessoais da Microsoft
    • Contas pessoais da Microsoft
  5. Selecione Registrar.

💡Observação: atribua somente as permissões necessárias para relatórios e auditoria de login (permissões de aplicativo).

Depois de configurar o aplicativo de relatórios, guarde as credenciais em um cofre seguro e faça a rotação do acesso aos logs. Registre o status de consentimento de cada tenant usando o aplicativo de relatórios e deixe os dados prontos para as próximas datas de revisão.

Ao final, você terá uma base reforçada e auditável para a coleta automatizada.

Passo 3: conecte-se com o Graph PowerShell e faça as consultas de base

Primeiro, baixe o módulo Microsoft Graph PowerShell. Depois, siga estes passos para conectar o Windows PowerShell ao seu tenant do Microsoft Entra ID:

  1. Defina a política de execução do PowerShell como remote signed com este comando: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
  2. Execute este comando para instalar o módulo Microsoft Graph PowerShell:Install-Module -Name Microsoft.Entra -Repository PSGallery -Scope CurrentUser -Force -AllowClobber
  3. Execute Connect-Entra -Scopes 'User.Read.All' e faça login com uma conta de administrador do tenant quando solicitado.

Feito isso, você já pode:

  • Autenticar sem interação em cada tenant usando o registro do aplicativo.
  • Executar consultas de base para uma janela de 24 a 72 horas e exportar em CSV/JSON.
  • Validar os campos principais (aplicativo cliente, resultado de MFA, códigos de erro) e o tratamento de fuso horário.

Com a conexão ao Microsoft Graph estabelecida, dá para fazer consultas mais úteis e exportar os dados necessários para a auditoria.

Passo 4: crie filtros e detecções de alto sinal

Com os logs brutos em mãos, é hora do próximo passo: transformar esses dados em sinais de segurança acionáveis. Para isso:

  • Crie filtros salvos no Microsoft Entra para autenticação legada, falhas repetidas de MFA, localizações/ASNs desconhecidos, logins de alto risco e aplicativos clientes incomuns.
  • Adicione enriquecimento (geolocalização, ASN, departamento do usuário) e listas de permissões por tenant para reduzir o ruído.
  • Defina limites e níveis de severidade vinculados a playbooks (investigar, avisar o CSM, abrir incidente).

Com tudo isso pronto, fica mais fácil identificar problemas. O tempo de triagem cai e a equipe atua de forma mais consistente.

Passo 5: agende, armazene e preserve as evidências

Acompanhe seus dados e os resultados das auditorias internas. Assim eles se tornam mais duradouros e prontos para auditorias externas.

Para isso:

  • Agende coletas por hora ou por dia, com lógica de back-fill para evitar lacunas.
  • Grave as exportações de cada tenant em pastas estruturadas; aplique versionamento e retenção.
  • Gere consolidações diárias e mensais com contagens de detecções e variações de tendência.

Acompanhar todos os dados garante um histórico mais confiável para investigações, conformidade e para contar a história nas QBRs.

Passo 6: alertas e relatórios em escala multi-tenant

Com dados e relatórios prontos, dá para expor riscos mais rápido e mostrar evolução. Apresente os dados a todas as partes interessadas e organize-os em relatórios prontos para QBR.

Para integrar as detecções aos seus fluxos de trabalho habituais:

  • Crie rotas de alerta para detecções críticas (por exemplo, picos de autenticação legada e falhas persistentes de MFA).
  • Publique scorecards mensais de segurança de login por tenant: taxa de autenticação legada, taxa de falha de MFA, logins arriscados, anomalias geográficas e MTTR.
  • Acompanhe as tarefas de remediação (desativar protocolos legados, reforçar o acesso condicional, orientar usuários) e confirme a melhoria na consolidação do mês seguinte.

Isso cria uma operação de ciclo fechado, que reduz riscos e comprova valor, integrando o pipeline de auditoria ao dia a dia sem atritos.

Ideias de integração com NinjaOne no processamento de logs de login do Microsoft Entra e outros dados

  • Automação: execute scripts PowerShell agendados e marque os tenants por status de consentimento e saúde da coleta.
  • Monitoramento: configure um alerta para falhas de job, exportações vazias ou picos incomuns de detecção.

Guia de início rápido

Para montar um pipeline desses, normalmente é preciso:

1. Configurar o Entra ID: tenha vários tenants configurados no Entra ID.
2. Usar a API do Microsoft Graph: use a API do Microsoft Graph para acessar os logs de login de todos os tenants.
3. Módulos do PowerShell: utilize módulos como Microsoft.Graph no PowerShell para interagir com o Entra ID.
4. Scripts: escreva scripts PowerShell para consultar logs de login, filtrar dados de auditoria e exportar relatórios.

Use os logs de auditoria do Microsoft Entra para melhorar sua operação

Um pipeline em PowerShell apoiado no Microsoft Graph transforma os logs de login do Entra em um ativo operacional poderoso. Você ganha coleta repetível, detecções confiáveis e evidências prontas para auditoria.

Temas relacionados:

FAQs

Use permissões de aplicativo para processos em segundo plano automatizados ou sem supervisão, como exportações agendadas e jobs de sincronização contínua. Elas permitem autenticação segura entre serviços, sem envolver usuários. Reserve as permissões delegadas para investigações interativas ou pontuais que exigem um usuário autenticado. Essa abordagem garante o privilégio mínimo, reduz riscos e assegura a auditabilidade.

Guarde os logs de login brutos por pelo menos 6 a 12 meses para atender às necessidades de conformidade, auditoria e investigação de segurança — talvez até mais. O prazo varia conforme o setor e os requisitos regulatórios aos quais você precisa atender. Para análises de longo prazo, armazene resumos agregados ou consolidações e acompanhe tendências e métricas de desempenho com eficiência. Essa estratégia equilibra exigências regulatórias, otimização de custos e visibilidade dos dados.

Se um tenant não concedeu os consentimentos de OAuth ou de API necessários, adicione-o a uma fila de nova tentativa para lembretes automáticos ou escalonamento. Mantenha as verificações de consentimento agendadas e bloqueie o status “verde” até que o consentimento do administrador e a validação de uma exportação bem-sucedida estejam concluídos. Isso garante a integridade dos dados e um gerenciamento de conformidade consistente em vários tenants.

Implemente verificações automáticas de saúde dos consentimentos e fluxos de alerta que detectem permissões revogadas, tokens expirados ou escopos ausentes. Integre esses alertas ao Azure Monitor, ao Sentinel ou a painéis personalizados para manter a disponibilidade da API, reduzir interrupções de serviço e melhorar sua postura de segurança.

Crie uma política automática de rotação de credenciais com o Azure Key Vault, identidades gerenciadas ou um pipeline de CI/CD seguro. Ao renovar automaticamente segredos de cliente, certificados e tokens de acesso antes do vencimento, você evita interrupções de serviço e reduz a chance de falhas de autenticação. Auditorias periódicas da automação também mantêm a conformidade com as boas práticas de segurança.

Recomendados para você

Pronto para simplificar as partes mais difíceis da TI?

Termos e condições NinjaOne

Ao clicar no botão “Aceito” abaixo, você indica sua aceitação dos seguintes termos legais, bem como dos nossos Termos de Uso:

  • Direitos de propriedade: A NinjaOne é proprietária e continuará a ser proprietária de todos os direitos, títulos e interesses relativos ao script (incluindo os direitos autorais). A NinjaOne está concedendo a você uma licença limitada para usar o script de acordo com os presentes termos legais.
  • Limitação de uso: Você só poderá usar o script para fins comerciais internos ou pessoais legítimos, sendo vedado compartilhar o script com terceiros.
  • Proibição de republicação: Em nenhuma circunstância você tem permissão para republicar o script em qualquer biblioteca de scripts pertencente ou sob o controle de qualquer outro fornecedor de software.
  • Isenção de responsabilidade da garantia: O script é fornecido “no estado em que se encontra” e “conforme disponível”, sem qualquer tipo de garantia. A NinjaOne não promete ou garante que o script estará livre de defeitos ou que atenderá às suas necessidades ou expectativas específicas.
  • Assunção de riscos: O uso do script é por sua própria conta e risco. Você reconhece que há certos riscos inerentes ao uso do script, e você compreende e assume cada um desses riscos.
  • Renúncia e isenção de responsabilidade: Você não responsabilizará a NinjaOne por consequências adversas ou não intencionais resultantes do seu uso do script e renunciará a quaisquer direitos ou tutelas legais que possa ter contra a NinjaOne em relação ao seu uso do script.
  • EULA: Se você for cliente da NinjaOne, o uso do script está sujeito ao Contrato de Licença de Usuário Final aplicável a você (EULA).