Get-EntraBetaAuditDirectoryLog
Pobieranie dzienników inspekcji katalogu.
Składnia
Default (domyślnie)
Get-EntraBetaAuditDirectoryLog
[-All]
[-Top <Int32>]
[-Filter <String>]
[-Property <String[]>]
[<CommonParameters>]
Opis
Polecenie Get-EntraBetaAuditDirectoryLog cmdlet pobiera dziennik inspekcji Microsoft Entra ID.
Pobierz dzienniki inspekcji z Microsoft Entra ID, obejmujące dzienniki z różnych usług, takich jak użytkownik, aplikacja, zarządzanie urządzeniami i grupami, uprzywilejowane zarządzanie tożsamościami (PIM), przeglądy dostępu, warunki użytkowania, ochrona tożsamości, zarządzanie hasłami (samoobsługowe resetowanie hasła i resetowanie administratora) oraz samoobsługowe zarządzanie grupami.
W scenariuszach delegowanych z kontami służbowymi zalogowany użytkownik musi mieć obsługiwaną rolę Microsoft Entra lub rolę niestandardową z niezbędnymi uprawnieniami. Następujące najmniej uprzywilejowane role obsługują tę operację:
- Czytelnik raportów
- Administrator zabezpieczeń
- Przeglądarka zabezpieczeń
Przykłady
Przykład 1. Pobieranie wszystkich dzienników
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
Get-EntraBetaAuditDirectoryLog -All
Id ActivityDateTime ActivityDisplayName Category CorrelationId
-- ---------------- ------------------- -------- -------------
Directory_aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 17/07/2024 08:55:34 Add service principal ApplicationManagement aaaa0000-bb11-2222-33cc-444444dddddd
Directory_bbbbbbbb-1111-2222-3333-cccccccccccc 17/07/2024 07:31:54 Update user UserManagement bbbb1111-cc22-3333-44dd-555555eeeeee
SSGM_cccccccc-2222-3333-4444-dddddddddddd 17/07/2024 07:13:08 GroupsODataV4_GetgroupLifecyclePolicies GroupManagement cccc2222-dd33-4444-55ee-666666ffffff
To polecenie pobiera wszystkie dzienniki inspekcji.
Przykład 2. Wyświetlanie listy dzienników inspekcji tworzenia grupy
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
$groupId = (Get-EntraBetaGroup -SearchString 'Woodgrove DevOps').Id
Get-EntraBetaAuditDirectoryLog -Filter "
activityDisplayName eq 'Add group'
and targetResources/any(r:r/id eq '$groupId')"
Id ActivityDateTime ActivityDisplayName Category CorrelationId LoggedByService OperationType Result ResultReason
-- ---------------- ------------------- -------- ------------- --------------- ------------- ------ ------------
Directory_aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 03/06/2025 22:22:17 Add group GroupManagement aaaa0000-bb11-2222-33cc-444444dddddd Core Directory Add success
To polecenie pobiera wszystkie dzienniki inspekcji tworzenia grupy.
Przykład 3. Pobieranie ostatnio używanych dzienników inspekcji tworzenia grup
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
Get-EntraBetaAuditDirectoryLog -Filter "activityDisplayName eq 'Add group'" -Limit 5 |
Select-Object id, activityDateTime,
@{Name="InitiatedByUPN"; Expression={ $_.initiatedBy.user.userPrincipalName }},
result,
@{Name="GroupDisplayName"; Expression={ $_.targetResources[0].displayName }} |
Format-Table -AutoSize
Id ActivityDateTime InitiatedByUPN Result GroupDisplayName
-- ---------------- -------------- ------ ----------------
Directory_11111111-2222-3333-4444-555555555555 03/07/2025 18:30:45 admin@contoso.com success Woodgrove Developers
Directory_aaaa0000-bb11-2222-33cc-444444dddddd 03/06/2025 22:22:17 user1@contoso.com success Woodgrove DevOps
Directory_99999999-8888-7777-6666-555555555555 03/05/2025 15:10:12 admin2@contoso.com success Security Team
To polecenie pobiera najnowsze dzienniki inspekcji tworzenia grupy.
Przykład 4. Pokaż szczegóły zaktualizowanej metody uwierzytelniania użytkownika
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
$userId = (Get-EntraBetaUser -UserId 'sawyerM@contoso.com').Id
Get-EntraBetaAuditDirectoryLog -Filter "category eq 'UserManagement' and LoggedByService eq 'Authentication Methods' and targetResources/any(r:r/id eq '$userId')"
Id ActivityDateTime ActivityDisplayName Category CorrelationId LoggedByService OperationType Result ResultReason
-- ---------------- ------------------- -------- ------------- --------------- ------------- ------ ------------
Authentication Methods_{GUID} 02/17/2025 13:20:08 User registered security info UserManagement aaaa0000-bb11-2222-33cc-444444dddddd Authentication Methods ServiceApi success User registered Fido2 Authentication Method
Authentication Methods_{GUID} 02/17/2025 13:19:57 Get passkey creation options UserManagement bbbb1111-cc22-3333-44dd-555555eeeeee Authentication Methods ServiceApi success Successfully retrieved passkey creation options.
Authentication Methods_{GUID} 02/15/2025 17:38:02 User registered security info UserManagement cccc2222-dd33-4444-55ee-666666ffffff Authentication Methods ServiceApi success User registered temporary access pass method
To polecenie pobiera szczegóły zaktualizowanej metody uwierzytelniania użytkownika.
Przykład 5. Wyświetlanie listy zadań aprowizacji objętych kwarantanną
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
Get-EntraBetaAuditDirectoryLog -Filter "activityDisplayName eq 'Quarantine'" -Limit 1 |
Select-Object Id, ActivityDateTime, ActivityDisplayName, Category, LoggedByService, Result,
ResultReason,
@{Name="InitiatedByDisplayName"; Expression={ $_.targetResources[0].displayName }}
id : Sync_{GUID}
activityDateTime : 02/14/2025 04:23:38
activityDisplayName : Quarantine
category : ProvisioningManagement
loggedByService : Account Provisioning
result : failure
resultReason : This run profile is being quarantined because of: EncounteredQuarantineException; Error: Your ServiceNow credentials are invalid. Please obtain valid ServiceNow credentials, navigate to your ServiceNow enterprise application in the Azure Portal, and ente
r those details in the admin credentials section of the provisioning configuration page. For directions on how to input credentials into your application, review the tutorial specific to ServiceNow found here: https://docs.microsoft.com/en-us/azure/activ
e-directory/saas-apps/servicenow-provisioning-tutorial
InitiatedByDisplayName : ServiceNow
To polecenie pobiera zadania aprowizacji poddane kwarantannie.
Przykład 6. Pobieranie pierwszych n dzienników
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
Get-EntraBetaAuditDirectoryLog -Top 1
Id ActivityDateTime ActivityDisplayName Category CorrelationId LoggedB
yServic
e
-- ---------------- ------------------- -------- ------------- -------
Directory_aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb_8IAPT_617717139 17/07/2024 08:55:34 Add service principal ApplicationManagement aaaa0000-bb11-2222-33cc-444444dddddd Core...
Ten przykład zwraca pierwsze N dzienników. Możesz użyć -Limit jako aliasu dla -Top.
Przykład 7. Pobieranie dzienników inspekcji zawierających daną nazwę ActivityDisplayName
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
Get-EntraBetaAuditDirectoryLog -Filter "ActivityDisplayName eq 'Update rollout policy of feature'" -Top 1
Id ActivityDateTime ActivityDisplayName Category CorrelationId
-- ---------------- ------------------- -------- -------------
Application Proxy_aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb 16/07/2024 05:13:49 Update rollout policy of feature Authentication aaaa0000-bb11-2222-33cc-444444dddddd
To polecenie pokazuje, jak pobrać dzienniki inspekcji według ActivityDisplayName. Możesz użyć -Limit jako aliasu dla -Top.
Przykład 8. Pobieranie wszystkich dzienników inspekcji z danym wynikiem
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
Get-EntraBetaAuditDirectoryLog -Filter "result eq 'failure'" -All
To polecenie pokazuje, jak uzyskać dzienniki inspekcji według wyniku.
Przykład 9. Pokaż, kiedy użytkownicy zostali dodani do grupy
Connect-Entra -Scopes 'AuditLog.Read.All, Directory.Read.All'
$groupId = (Get-EntraBetaGroup -SearchString 'Contoso Group').Id
Get-EntraBetaAuditDirectoryLog -Filter "
activityDisplayName eq 'Add member to group'
and targetResources/any(r:r/type eq 'User')
and targetResources/any(r:r/id eq '$groupId' and r/type eq 'Group')"
Id ActivityDateTime ActivityDisplayName Category CorrelationId LoggedByService OperationType Result ResultReason
-- ---------------- ------------------- -------- ------------- --------------- ------------- ------ ------------
Directory_{GUID} 03/07/2025 23:16:31 Add member to group GroupManagement aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb Core Directory Assign success
To polecenie pokazuje, kiedy użytkownicy zostali dodani do grupy.
Parametry
-All
Wyświetl listę wszystkich stron.
Właściwości parametru
| Typ: | System.Management.Automation.SwitchParameter |
| Domyślna wartość: | False |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Filter
Instrukcja filtru OData w wersji 4.0. Określa, które obiekty są zwracane.
Właściwości parametru
| Typ: | System.String |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | True |
| Wartość z potoku według nazwy właściwości: | True |
| Wartość z pozostałych argumentów: | False |
-Property
Określa właściwości, które mają być zwracane
Właściwości parametru
| Typ: | System.String[] |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
| Aliasy: | Select |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | False |
| Wartość z potoku według nazwy właściwości: | False |
| Wartość z pozostałych argumentów: | False |
-Top
Maksymalna liczba rekordów do zwrócenia.
Właściwości parametru
| Typ: | System.Int32 |
| Domyślna wartość: | None |
| Obsługuje symbole wieloznaczne: | False |
| DontShow: | False |
| Aliasy: | Ograniczenie |
Zestawy parametrów
(All)
| Position: | Named |
| Obowiązkowe: | False |
| Wartość z potoku: | True |
| Wartość z potoku według nazwy właściwości: | True |
| Wartość z pozostałych argumentów: | False |
CommonParameters
To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.
Notatki
Get-EntraBetaAuditDirectoryLogs to alias dla elementu Get-EntraBetaAuditDirectoryLog.