Анализ журналов действий с помощью Microsoft Graph
API отчетов Microsoft Entra предоставляют программный доступ к данным с помощью набора REST API. Эти API можно вызывать на многих языках программирования и средствах.
В этой статье описывается, как анализировать журналы действий Microsoft Entra с помощью Microsoft Graph Explorer и Microsoft Graph PowerShell.
Предварительные условия
- Рабочий клиент Microsoft Entra с лицензией Microsoft Entra ID P1 или P2, связанной с ней.
- Чтобы предоставить необходимые разрешения, вам потребуется администратор привилегированных ролей.
Доступ к отчетам с помощью Обозревателя Microsoft Graph
При настройке всех необходимых компонентов можно выполнять запросы журнала действий в Microsoft Graph. API Microsoft Graph не предназначен для извлечения больших объемов данных действий. Извлечение больших объемов данных действий с помощью API может привести к проблемам с разбивкой на страницы и производительностью. Дополнительные сведения о запросах Microsoft Graph для журналов действий см. в обзоре API отчетов о действиях.
Запустите Microsoft Graph Explorer.
Выберите профиль и выберите пункт "Изменить разрешения".
Согласие на следующие необходимые разрешения:
AuditLog.Read.All
Directory.Read.All
Используйте один из следующих запросов, чтобы начать использовать Microsoft Graph для доступа к журналам действий:
- ПОЛУЧИТЬ
https://graph.microsoft.com/v1.0/auditLogs/directoryAudits
- GET
https://graph.microsoft.com/v1.0/auditLogs/signIns
- ПОЛУЧИТЬ
https://graph.microsoft.com/v1.0/auditLogs/provisioning
- ПОЛУЧИТЬ
Настройка запросов
Чтобы найти определенные записи журнала действий, используйте параметры запроса $filter и createdDateTime с одним из доступных свойств. Некоторые из следующих запросов используют конечную точку beta
. Бета-конечная точка подвержена изменению и не рекомендуется для использования в рабочей среде.
Попробуйте использовать следующие запросы:
Для попыток входа, в которых произошел сбой условного доступа:
- ПОЛУЧИТЬ
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
Для неинтерактивных входов:
- 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')
- ПОЛУЧИТЬ
Для входа с помощью управляемой идентификации:
- ПОЛУЧИТЬ
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
- ПОЛУЧИТЬ
Сведения о регистрации конкретного пользователя:
- ПОЛУЧИТЬ
https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails/{userId}
- Требуется разрешение
UserAuthenticationMethod.Read.All
- ПОЛУЧИТЬ
Связанные API-интерфейсы
Когда вы знакомы со стандартными журналами входа и аудита, попробуйте ознакомиться с этими другими API:
Доступ к отчетам с помощью Microsoft Graph PowerShell
С помощью PowerShell можно получить доступ к API отчетов Microsoft Entra. Дополнительные сведения см. в обзоре Microsoft Graph PowerShell.
Командлеты Microsoft Graph PowerShell:
-
Журналы аудита:
Get-MgAuditLogDirectoryAudit
-
Журналы входа:
Get-MgAuditLogSignIn
-
Журналы настройки:
Get-MgAuditLogProvisioning
- Изучите полный список командлетов Microsoft Graph PowerShell, связанных с отчетами.
Распространенные ошибки
Ошибка: ни один арендатор не является B2C или арендатор не имеет премиум-лицензии: для доступа к отчетам о входе требуется лицензия Microsoft Entra ID P1 или P2. Если вы видите это сообщение об ошибке при доступе к входам, убедитесь, что ваш арендатор имеет лицензию Microsoft Entra ID P1.
Ошибка: Пользователь не входит в разрешенные роли: Если вы видите это сообщение об ошибке при попытке получить доступ к журналам аудита или к данным входа с помощью API, убедитесь, что ваша учетная запись является частью роли Читатель безопасности или Читатель отчетов в клиенте Microsoft Entra.
Ошибка: приложению не хватает разрешения Microsoft Entra ID на "Чтение данных каталога" или "Чтение всех данных журнала аудита": приложение должно иметь разрешение AuditLog.Read.All
или Directory.Read.All
для доступа к журналам действий с помощью Microsoft Graph.