Анализ журналов действий с помощью Microsoft Graph

API отчетов Microsoft Entra предоставляют программный доступ к данным с помощью набора REST API. Эти API можно вызывать на многих языках программирования и средствах. API Microsoft Graph не предназначен для извлечения больших объемов данных действий. Извлечение больших объемов данных действий с помощью API может привести к проблемам с разбивкой на страницы и производительностью.

В этой статье описывается, как анализировать журналы действий Microsoft Entra с помощью Microsoft Graph Обозреватель и Microsoft Graph PowerShell.

Необходимые компоненты

Чтобы выполнить запросы к API Microsoft Graph, сначала необходимо:

Доступ к отчетам с помощью Обозреватель Microsoft Graph

При настройке всех необходимых компонентов можно выполнять запросы журнала действий в Microsoft Graph. Дополнительные сведения о запросах Microsoft Graph для журналов действий см. в обзоре API отчетов о действиях.

  1. Запустите средство Обозреватель Microsoft Graph.

  2. Выберите профиль и выберите пункт "Изменить разрешения".

  3. Согласие на следующие необходимые разрешения:

    • AuditLog.Read.All
    • Directory.Read.All
  4. Используйте один из следующих запросов, чтобы начать использовать Microsoft Graph для доступа к журналам действий:

    • 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 журнала действий в Microsoft Graph.

Настройка запросов

Чтобы найти определенные записи журнала действий, используйте параметры запроса $filter и createdDateTime с одним из доступных свойств. Некоторые из следующих запросов используют конечную точку beta . Бета-конечная точка подвержена изменению и не рекомендуется для использования в рабочей среде.

Попробуйте использовать следующие запросы:

  • Для попыток входа, в которых произошел сбой условного доступа:

    • GET https://graph.microsoft.com/v1.0/auditLogs/signIns?&$filter=conditionalAccessStatus eq 'failure'
  • Чтобы найти входы в определенное приложение, выполните указанные действия.

    • 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 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 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 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 https://graph.microsoft.com/beta/users/{userObjectId}/authentication/methods
    • Требуется разрешение UserAuthenticationMethod.Read.All
  • Чтобы просмотреть отчет о регистрации пользователя:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails
    • Требуется разрешение UserAuthenticationMethod.Read.All
  • Сведения о регистрации конкретного пользователя:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails/{userId}
    • Требуется разрешение UserAuthenticationMethod.Read.All

Когда вы знакомы со стандартными журналами входа и аудита, попробуйте ознакомиться с этими другими API:

Доступ к отчетам с помощью Microsoft Graph PowerShell

С помощью PowerShell можно получить доступ к API отчетов Microsoft Entra. Дополнительные сведения см. в обзоре Microsoft Graph PowerShell.

Командлеты Microsoft Graph PowerShell:

Распространенные ошибки

Ошибка. Ни клиент B2C, ни клиент не имеет лицензии premium: для доступа к отчетам о входе требуется лицензия Microsoft Entra ID P1 или P2. Если вы видите это сообщение об ошибке при доступе к входам, убедитесь, что клиент лицензирован лицензирован лицензией Microsoft Entra ID P1.

Ошибка. Пользователь не входит в разрешенные роли: если при попытке получить доступ к журналам аудита или входу с помощью API, убедитесь, что ваша учетная запись входит в роль читателя безопасности или читателя отчетов в клиенте Microsoft Entra.

Ошибка: приложение с отсутствующим идентификатором Microsoft Entra ID "Чтение данных каталога" или разрешением "Чтение всех данных журнала аудита": приложение должно иметь Directory.Read.AllAuditLog.Read.All либо разрешение на доступ к журналам действий с помощью Microsoft Graph.

Следующие шаги