Analysieren von Aktivitätsprotokollen mit Microsoft Graph
Die Berichterstellungs-APIs Microsoft Entra bieten Ihnen über einen Satz von REST-APIs programmgesteuerten Zugriff auf die Daten. Sie können diese APIs über zahlreiche Programmiersprachen und Tools aufrufen.
In diesem Artikel wird beschrieben, wie Sie Microsoft Entra-Aktivitätsprotokolle mit Microsoft Graph Explorer und Microsoft Graph PowerShell analysieren.
Voraussetzungen
- Ein funktionierender Microsoft Entra-Mandant mit einer Microsoft Entra ID P1- oder P2-Lizenz, die ihm zugeordnet ist.
- Um den erforderlichen Berechtigungen zuzustimmen, benötigen Sie Rolle Administrator für privilegierte Rollen.
Zugreifen auf Berichte über Microsoft Graph-Tester
Wenn alle Voraussetzungen erfüllt sind, können Sie Aktivitätsprotokollabfragen in Microsoft Graph durchführen. Die Microsoft Graph-API ist nicht für das Pullen großer Mengen von Aktivitätsdaten konzipiert. Das Pullen großer Mengen von Aktivitätsdaten mithilfe der API führt u. U. zu Problemen mit der Paginierung und Leistung. Weitere Informationen zu Microsoft Graph-Abfragen für Aktivitätsprotokolle finden Sie in der Übersicht über die API für Aktivitätsberichte.
Starten Sie das Tool Microsoft Graph-Tester.
Wählen Sie Ihr Profil aus, und wählen Sie dann Berechtigungen ändern aus.
Stimmen Sie den folgenden erforderlichen Berechtigungen zu:
AuditLog.Read.All
Directory.Read.All
Verwenden Sie eine der folgenden Abfragen, um Microsoft Graph für den Zugriff auf Aktivitätsprotokolle zu nutzen:
- 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
Optimieren Ihrer Abfragen
Um nach bestimmten Aktivitätsprotokolleinträgen zu suchen, verwenden Sie die Abfrageparameter „$filter“ und „createdDateTime“ mit einer der verfügbaren Eigenschaften. Einige der folgenden Abfragen verwenden den beta
-Endpunkt. Der Beta-Endpunkt kann jederzeit geändert werden und wird daher nicht zur Verwendung in der Produktion empfohlen.
Versuchen Sie die folgenden Abfragen zu verwenden:
Bei Anmeldeversuchen, bei denen der bedingte Zugriff fehlgeschlagen ist:
- GET
https://graph.microsoft.com/v1.0/auditLogs/signIns?$filter=conditionalAccessStatus eq 'failure'
- Erwägen Sie die Verwendung eines Datumsfilters, damit bei der Anforderung kein Timeout auftritt.
- GET
So suchen Sie Anmeldungen bei einer bestimmten Anwendung in einem bestimmten Zeitrahmen
- 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
Für nicht interaktive Anmeldungen:
- 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
Für Dienstprinzipalanmeldungen:
- 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
Für Anmeldungen über verwaltete Identitäten:
- 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
Zum Abrufen der Authentifizierungsmethode eines Benutzers:
- GET
https://graph.microsoft.com/beta/users/{userObjectId}/authentication/methods
- Erfordert die
UserAuthenticationMethod.Read.All
-Berechtigung
- GET
Zum Anzeigen des Berichts der Benutzerregistrierungsdetails:
- GET
https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails
- Erfordert die
UserAuthenticationMethod.Read.All
-Berechtigung
- GET
Für die Registrierungsdetails eines bestimmten Benutzers:
- GET
https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails/{userId}
- Erfordert die
UserAuthenticationMethod.Read.All
-Berechtigung
- GET
Zugehörige APIs
Sobald Sie mit den Standardanmelde- und Überwachungsprotokollen vertraut sind, probieren Sie diese anderen APIs aus:
Zugreifen auf Berichte über Microsoft Graph PowerShell
Sie können PowerShell verwenden, um auf die Berichterstellungs-API von Microsoft Entra zuzugreifen. Weitere Informationen finden Sie in der Übersicht über Microsoft Graph PowerShell.
PowerShell-Cmdlets für Microsoft Graph:
- Überwachungsprotokolle:
Get-MgAuditLogDirectoryAudit
- Anmeldeprotokolle:
Get-MgAuditLogSignIn
- Bereitstellungsprotokolle:
Get-MgAuditLogProvisioning
- Sehen Sie sich die vollständige Liste der berichtsbezogenen PowerShell-Cmdlets für Microsoft Graph an.
Häufige Fehler
Fehler: Kein Mandant ist B2C, oder der Mandant besitzt keine Premium-Lizenz: Für den Zugriff auf Anmeldeberichte ist eine Microsoft Entra ID P1- bzw. P2-Lizenz erforderlich. Wenn diese Fehlermeldung beim Zugriff auf Anmeldungen angezeigt wird, stellen Sie sicher, dass Ihr Mandant mit einer Microsoft Entra ID P1-Lizenz lizenziert ist.
Fehler: Der Benutzer gehört nicht den zulässigen Rollen an: Wenn Sie diese Fehlermeldung sehen, während Sie versuchen, über die API auf Überwachungsprotokolle oder Anmeldungen zuzugreifen, stellen Sie sicher, dass Ihr Konto Teil der Rolle Sicherheitsleseberechtigter oder Berichtleseberechtigter in Ihrem Azure Active Directory-Mandanten ist.
Fehler: Die Microsoft Entra ID-Berechtigung „Verzeichnisdaten lesen“ oder „Alle Überwachungsprotokolldaten lesen“ fehlt in der Anwendung: Für den Zugriff auf die Aktivitätsprotokolle mit Microsoft Graph benötigt die Anwendung entweder die Berechtigung AuditLog.Read.All
oder die Berechtigung Directory.Read.All
.