Como Analisar logs de atividades com o Microsoft Graph

As APIs de relatório do Microsoft Entra fornecem acesso programático aos dados através de um conjunto de APIs REST. Você pode chamar essas APIs de muitas ferramentas e linguagens de programação. A API do Microsoft Graph não é projetada para efetuar pull de grandes quantidades de dados de atividade. Obter grandes quantidades de dados de atividade usando a API pode gerar problemas de paginação e desempenho.

Este artigo descreve como analisar os logs de atividades do Microsoft Entra com o Microsoft Graph Explorer e o Microsoft Graph PowerShell.

Pré-requisitos

Para fazer solicitações à API do Microsoft Graph, primeiro você precisa:

Acessar relatórios usando o Explorador do Microsoft Graph

Depois que todos os pré-requisitos estiverem configurados, você poderá executar consultas de log de atividades no Microsoft Graph. Para obter mais informações sobre as consultas do Microsoft Graph para os logs de atividades, confira Visão geral da API de relatórios de atividades.

  1. Inicie a Start ferramenta Microsoft Graph Explorer.

  2. Selecione seu perfil e, em seguida, selecione Modificar permissões.

  3. Consentir com as seguintes permissões necessárias:

    • AuditLog.Read.All
    • Directory.Read.All
  4. Use uma das seguintes consultas para começar a usar o Microsoft Graph para acessar os logs de atividades:

    • GET https://graph.microsoft.com/v1.0/auditLogs/directoryAudits
    • GET https://graph.microsoft.com/v1.0/auditLogs/signIns
    • GET https://graph.microsoft.com/v1.0/auditLogs/provisioning

    Captura de tela de uma consulta GET do log de atividades no Microsoft Graph.

Ajustar suas consultas

Para pesquisar entradas de log de atividades específicas, use os parâmetros de consulta $filter e createdDateTime com uma das propriedades disponíveis. Algumas das consultas a seguir usam o ponto de extremidade beta. O ponto de extremidade beta está sujeito a alterações e não é recomendado para uso em produção.

Tente usar as seguintes consultas:

  • Para tentativas de entrada em que o Acesso Condicional falhou:

    • GET https://graph.microsoft.com/v1.0/auditLogs/signIns?&$filter=conditionalAccessStatus eq 'failure'
  • Para localizar entradas em um aplicativo específico:

    • GET https://graph.microsoft.com/v1.0/auditLogs/signIns?&$filter=(createdDateTime ge 2024-01-13T14:13:32Z and createdDateTime le 2024-01-14T17:43:26Z) and appId eq 'APP ID'
  • Para entradas não interativas:

    • GET https://graph.microsoft.com/beta/auditLogs/signIns?&$filter=(createdDateTime ge 2024-01-13T14:13:32Z and createdDateTime le 2024-01-14T17:43:26Z) and signInEventTypes/any(t: t eq 'nonInteractiveUser')
  • Para entradas da entidade de serviço:

    • GET https://graph.microsoft.com/beta/auditLogs/signIns?&$filter=(createdDateTime ge 2024-01-13T14:13:32Z and createdDateTime le 2024-01-14T17:43:26Z) and signInEventTypes/any(t: t eq 'servicePrincipal')
  • Para entradas de identidade gerenciada:

    • GET https://graph.microsoft.com/beta/auditLogs/signIns?&$filter=(createdDateTime ge 2024-01-13T14:13:32Z and createdDateTime le 2024-01-14T17:43:26Z) and signInEventTypes/any(t: t eq 'managedIdentity')
  • Para obter o método de autenticação de um usuário:

    • GET https://graph.microsoft.com/beta/users/{userObjectId}/authentication/methods
    • Requer a permissão UserAuthenticationMethod.Read.All
  • Para ver o relatório de detalhes do registro do usuário:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails
    • Requer a permissão UserAuthenticationMethod.Read.All
  • Para os detalhes de registro de um usuário específico:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails/{userId}
    • Requer a permissão UserAuthenticationMethod.Read.All

Depois de conhecer os logs de entrada e auditoria padrão, tente explorar estas outras APIs:

Acessar relatórios usando o PowerShell do Microsoft Graph

Você pode usar o PowerShell para acessar a API de relatórios do Microsoft Entra. Para obter mais informações, confira Visão geral do PowerShell do Microsoft Graph.

Cmdlets do PowerShell do Microsoft Graph:

Erros comuns

Erro: nenhum locatário é B2C ou o locatário não tem uma licença premium: o acesso de relatórios de entrada exige uma licença do Microsoft Entra ID P1 ou P2. Se essa mensagem de erro for exibida quando você acessar as entradas, verifique se o locatário está licenciado com uma licença do Microsoft Entra ID P1.

Erro: o usuário não está nas funções permitidas: se essa mensagem de erro for exibida quando você tentar acessar os logs de auditoria ou as entradas usando a API, verifique se a sua conta faz parte da função Leitor de Segurança ou Leitor de Relatórios no locatário do Microsoft Entra.

Erro: A permissão 'Ler dados do diretório' ou 'Ler todos os dados de log de auditoria' do Microsoft Entra ID está ausente do aplicativo: o aplicativo precisa ter a permissão AuditLog.Read.All ou Directory.Read.All para acessar os logs de atividades com o Microsoft Graph.

Próximas etapas