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.
Este artigo descreve como analisar os logs de atividades do Microsoft Entra com o Microsoft Graph Explorer e o Microsoft Graph PowerShell.
Pré-requisitos
- Um locatário do Microsoft Entra em funcionamento com uma licença Microsoft Entra ID P1 ou P2 associada a ele.
- Para consentir com as permissões necessárias, você precisa do Administrador de funções com privilégios.
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. 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. 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.
Inicie a Start ferramenta Microsoft Graph Explorer.
Selecione seu perfil e, em seguida, selecione Modificar permissões.
Consentir com as seguintes permissões necessárias:
AuditLog.Read.All
Directory.Read.All
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
- GET
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'
- Considere usar um filtro de data para que a solicitação não expire.
- GET
Para encontrar logins em um aplicativo específico durante um período de tempo 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'
- GET
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')
- GET
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')
- GET
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')
- GET
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
- GET
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
- GET
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
- GET
APIs relacionadas
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:
- Logs de auditoria:
Get-MgAuditLogDirectoryAudit
- Logs de entrada:
Get-MgAuditLogSignIn
- Logs de provisionamento
Get-MgAuditLogProvisioning
- Explore a lista completa de cmdlets do PowerShell do Microsoft Graph relacionados a relatórios.
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.