Microsoft Graph ile etkinlik günlüklerini analiz etme

Microsoft Entra raporlama API'leri , bir dizi REST API aracılığıyla verilere programlı erişim sağlar. Bu API'leri birçok programlama dilinden ve araçtan çağırabilirsiniz. Microsoft Graph API'si büyük miktarda etkinlik verilerini çekmek için tasarlanmamıştır. API'yi kullanarak büyük miktarda etkinlik verilerini çekmek sayfalandırma ve performansla ilgili sorunlara yol açabilir.

Bu makalede, Microsoft Graph Gezgini ve Microsoft Graph PowerShell ile Microsoft Entra etkinlik günlüklerinin nasıl analiz edildiği açıklanır.

Önkoşullar

Microsoft Graph API'sine istekte bulunmak için önce şunları yapmanız gerekir:

Microsoft Graph Gezgini'ni kullanarak raporlara erişme

Tüm önkoşullar yapılandırıldığında, Microsoft Graph'ta etkinlik günlüğü sorguları çalıştırabilirsiniz. Etkinlik günlükleri için Microsoft Graph sorguları hakkında daha fazla bilgi için bkz . Etkinlik raporları API'lerine genel bakış.

  1. Microsoft Graph Gezgini aracını başlatın.

  2. Profilinizi seçin ve ardından İzinleri değiştir'i seçin.

  3. Aşağıdaki gerekli izinlere onay verin:

    • AuditLog.Read.All
    • Directory.Read.All
  4. Etkinlik günlüklerine erişmek için Microsoft Graph kullanmaya başlamak için aşağıdaki sorgulardan birini kullanın:

    • 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

    Microsoft Graph'ta etkinlik günlüğü GET sorgusunun ekran görüntüsü.

Sorgularınızda ince ayar yapma

Belirli etkinlik günlüğü girdilerini aramak için, kullanılabilir özelliklerden biriyle $filter ve createdDateTime sorgu parametrelerini kullanın. Aşağıdaki sorgulardan bazıları uç noktayı kullanır beta . Beta uç noktası değiştirilebilir ve üretimde kullanılması önerilmez.

Aşağıdaki sorguları kullanmayı deneyin:

  • Koşullu Erişimin başarısız olduğu oturum açma girişimleri için:

    • GET https://graph.microsoft.com/v1.0/auditLogs/signIns?&$filter=conditionalAccessStatus eq 'failure'
  • Belirli bir uygulamada oturum açmaları bulmak için:

    • 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'
  • Etkileşimli olmayan oturum açma işlemleri için:

    • 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')
  • Hizmet sorumlusu oturum açma işlemleri için:

    • 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')
  • Yönetilen kimlik oturum açma işlemleri için:

    • 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')
  • Kullanıcının kimlik doğrulama yöntemini almak için:

    • GET https://graph.microsoft.com/beta/users/{userObjectId}/authentication/methods
    • İzin gerektirir UserAuthenticationMethod.Read.All
  • Kullanıcı kayıt ayrıntıları raporunu görmek için:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails
    • İzin gerektirir UserAuthenticationMethod.Read.All
  • Belirli bir kullanıcının kayıt ayrıntıları için:

    • GET https://graph.microsoft.com/beta/reports/authenticationMethods/userRegistrationDetails/{userId}
    • İzin gerektirir UserAuthenticationMethod.Read.All

Standart oturum açma ve denetim günlükleri hakkında bilgi sahibi olduktan sonra şu diğer API'leri keşfetmeyi deneyin:

Microsoft Graph PowerShell kullanarak raporlara erişme

PowerShell'i kullanarak Microsoft Entra raporlama API'sine erişebilirsiniz. Daha fazla bilgi için bkz . Microsoft Graph PowerShell'e genel bakış.

Microsoft Graph PowerShell cmdlet'leri:

  • Denetim günlükleriGet-MgAuditLogDirectoryAudit:
  • Oturum açma günlükleriGet-MgAuditLogSignIn:
  • Sağlama günlükleri:Get-MgAuditLogProvisioning
  • Raporlamayla ilgili Microsoft Graph PowerShell cmdlet'lerinin tam listesini keşfedin.

Sık karşılaşılan hatalar

Hata: Ne kiracı B2C ne de kiracı premium lisansa sahip değil: Oturum açma raporlarına erişmek için Microsoft Entra Id P1 veya P2 lisansı gerekir. Oturum açma işlemlerine erişirken bu hata iletisini görürseniz kiracınızın Microsoft Entra Id P1 lisansına sahip olduğundan emin olun.

Hata: Kullanıcı izin verilen rollerde değil: API'yi kullanarak denetim günlüklerine veya oturum açma işlemlerine erişmeye çalışırken bu hata iletisini görürseniz hesabınızın Microsoft Entra kiracınızdaki Güvenlik Okuyucusu veya Rapor Okuyucusu rolünün bir parçası olduğundan emin olun.

Hata: Uygulamada Microsoft Entra Id 'Dizin verilerini okuma' veya 'Tüm denetim günlüğü verilerini okuma' izni eksik: Uygulamanın Microsoft Graph ile etkinlik günlüklerine erişmek için veya Directory.Read.All izni olmalıdırAuditLog.Read.All.

Sonraki adımlar