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. 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.

In diesem Artikel wird beschrieben, wie Sie Microsoft Entra-Aktivitätsprotokolle mit Microsoft Graph Explorer und Microsoft Graph PowerShell analysieren.

Voraussetzungen

Um Anforderungen an die Microsoft Graph-API zu stellen, müssen Sie zuerst:

Zugreifen auf Berichte über Microsoft Graph-Tester

Wenn alle Voraussetzungen erfüllt sind, können Sie Aktivitätsprotokollabfragen in Microsoft Graph durchführen. Weitere Informationen zu Microsoft Graph-Abfragen für Aktivitätsprotokolle finden Sie in der Übersicht über die API für Aktivitätsberichte.

  1. Starten Sie das Tool Microsoft Graph-Tester.

  2. Wählen Sie Ihr Profil aus, und wählen Sie dann Berechtigungen ändern aus.

  3. Stimmen Sie den folgenden erforderlichen Berechtigungen zu:

    • AuditLog.Read.All
    • Directory.Read.All
  4. 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

    Screenshot: GET-Abfrage für Aktivitätsprotokolle in Microsoft Graph

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'
  • So suchen Sie Anmeldungen bei einer bestimmten Anwendung:

    • 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'
  • 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')
  • 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')
  • 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')
  • Zum Abrufen der Authentifizierungsmethode eines Benutzers:

    • GET https://graph.microsoft.com/beta/users/{userObjectId}/authentication/methods
    • Erfordert die UserAuthenticationMethod.Read.All-Berechtigung
  • Zum Anzeigen des Berichts der Benutzerregistrierungsdetails:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails
    • Erfordert die UserAuthenticationMethod.Read.All-Berechtigung
  • Für die Registrierungsdetails eines bestimmten Benutzers:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails/{userId}
    • Erfordert die UserAuthenticationMethod.Read.All-Berechtigung

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:

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.

Nächste Schritte