Search-UnifiedAuditLog

Questo cmdlet è disponibile solamente nel servizio basato sul cloud.

Utilizzare il cmdlet Search-UnifiedAuditLog per eseguire una ricerca nel log di controllo unificato. Questo registro contiene gli eventi di Exchange Online, SharePoint Online, OneDrive for business, Azure Active Directory, Microsoft teams, Power BI e altri servizi Microsoft 365. È possibile cercare tutti gli eventi in un intervallo di date specificato oppure è possibile filtrare i risultati in base a criteri specifici, ad esempio l'utente che ha eseguito l'azione, l'azione o l'oggetto di destinazione.

Nota: si consiglia di usare il modulo PowerShell V2 di Exchange Online per connettersi a PowerShell per Exchange Online. Per istruzioni, vedere Connettersi a PowerShell di Exchange Online.

Per informazioni sui set di parametri nella sezione Sintassi, vedere Sintassi del cmdlet di Exchange.

Sintassi

Search-UnifiedAuditLog
      -EndDate <ExDateTime>
      -StartDate <ExDateTime>
      [-Formatted]
      [-FreeText <String>]
      [-IPAddresses <String[]>]
      [-ObjectIds <String[]>]
      [-Operations <String[]>]
      [-RecordType <AuditRecordType>]
      [-ResultSize <Int32>]
      [-SessionCommand <UnifiedAuditSessionCommand>]
      [-SessionId <String>]
      [-SiteIds <String[]>]
      [-UserIds <String[]>]
      [<CommonParameters>]

Descrizione

Il cmdlet Search-UnifiedAuditLog presenta pagine di dati in base a iterazioni ripetute dello stesso comando. Utilizzare SessionId e SessionCommand per eseguire più volte il cmdlet fino a quando non viene restituito zero oppure ha raggiunto il numero massimo di risultati in base al comando Session. Per valutare lo stato di avanzamento, esaminare le proprietà ResultIndex (hit nell'iterazione corrente) e ResultCount (hit per tutte le iterazioni) dei dati restituiti dal cmdlet.

Il cmdlet Search-UnifiedAuditLog è disponibile in PowerShell di Exchange Online. È inoltre possibile visualizzare gli eventi dal registro di controllo unificato utilizzando il Centro sicurezza & Compliance. Per ulteriori informazioni, vedere attività controllate.

Se si desidera scaricare dati dal registro di controllo di Microsoft 365 a livello di programmazione, è consigliabile utilizzare l'API di Microsoft 365 Management invece di usare il cmdlet Search-UnifiedAuditLog in uno script di PowerShell. L'API Microsoft 365 Management Activity è un servizio Web REST che è possibile utilizzare per sviluppare soluzioni di monitoraggio di operazioni, sicurezza e conformità per l'organizzazione. Per ulteriori informazioni, vedere reference API di gestione attività.

Questo cmdlet è disponibile in Office 365 gestito da 21Vianet, ma non restituirà alcun risultato.

Il parametro OutVariable accetta oggetti di tipo ArrayList. Di seguito è riportato un esempio di come utilizzarlo:

$start = (Get-Date).AddDays(-1); $end = (Get-Date).AddDays(-0.5); $auditData = New-Object System.Collections.ArrayList; Search-UnifiedAuditLog -StartDate $start -EndDate $end -OutVariable +auditData | Out-Null

È necessario disporre delle autorizzazioni prima di poter eseguire questo cmdlet. Sebbene in questo argomento vengano elencati tutti i parametri relativi al cmdlet, si potrebbe non avere accesso ad alcuni di essi qualora non siano inclusi nelle autorizzazioni assegnate. Per individuare le autorizzazioni necessarie per eseguire cmdlet o parametri nell'organizzazione, vedere Trovare le autorizzazioni necessarie per eseguire i cmdlet di Exchange.

Esempio

Esempio 1

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/2/2018

In questo esempio viene eseguita una ricerca nel registro di controllo unificato per tutti gli eventi dal 1 ° maggio 201812 al 2 maggio 2018 12:00.

Nota: se non si include un timestamp nel valore per i parametri StartDate o EndDate, viene utilizzato il timestamp predefinito 12:00 AM (Midnight).

Esempio 2

Search-UnifiedAuditLog -StartDate "6/1/2018 8:00 AM" -EndDate "6/1/2018 6:00 PM" -RecordType ExchangeAdmin

In questo esempio viene eseguita una ricerca nel registro di controllo unificato per tutti gli eventi di amministrazione di Exchange dalle 8:00 alle 6:00 del 1 ° giugno 2018.

Note Se si utilizza la stessa data per i parametri StartDate ed EndDate, è necessario includere un timestamp. in caso contrario, non verrà restituito alcun risultato perché la data e l'ora per le date di inizio e di fine saranno uguali.

Esempio 3

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/8/2018 -SessionId "UnifiedAuditLogSearch 05/08/17" -SessionCommand ReturnLargeSet

In questo esempio viene eseguita una ricerca nel registro di controllo unificato per tutti gli eventi dal 1 ° maggio 2018 all'8 maggio 2018. Se non si include un indicatore di data e ora nei parametri StartDate o EndDate, i dati vengono restituiti nelle pagine quando il comando viene ripetuto sequenzialmente quando si utilizza lo stesso valore SessionId.

Nota: utilizzare sempre lo stesso valore di SessionCommand per un determinato valore SessionID. Non passare da ReturnLargeSet a ReturnNextPreviewPage per lo stesso ID di sessione. In caso contrario, l'output è limitato a 10.000 risultati.

Esempio 4

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/8/2018 -RecordType SharePointFileOperation -Operations FileAccessed -SessionId "WordDocs_SharepointViews"-SessionCommand ReturnLargeSet

In questo esempio viene eseguita una ricerca nel registro di controllo unificato per tutti i file a cui è stato eseguito l'accesso in SharePoint Online dal 1 ° maggio 2018 al 8 maggio 2018. I dati vengono restituiti nelle pagine quando il comando viene ripetuto sequenzialmente durante l'utilizzo dello stesso valore SessionId.

Esempio 5

Search-UnifiedAuditLog -StartDate 5/1/2018 -EndDate 5/8/2018 -ObjectIDs "https://alpinehouse.sharepoint.com/sites/contoso/Departments/SM/International/Shared Documents/Sales Invoice - International.docx"

In questo esempio viene eseguita la ricerca nel registro di controllo unificato dal 1 ° maggio 2018 al 8 maggio 2018 per tutti gli eventi relativi a un documento di Word specifico identificato dal relativo valore objectids).

Parametri

-EndDate

Il parametro EndDate consente di specificare la data di fine dell'intervallo di date. Le voci vengono archiviate nel log di controllo unificato in formato UTC (Coordinated Universal Time). Se si specifica un valore data/ora senza un fuso orario, il valore è in formato UTC.

Per specificare un valore data/ora per questo parametro, utilizzare una delle opzioni seguenti:

  • Specificare il valore data/ora in UTC: ad esempio, "2018-05-06 14:30:00z" .
  • Specificare il valore data/ora come formula che converte la data/ora nel fuso orario locale in ora UTC: ad esempio, (Get-Date "5/6/2018 9:30 AM").ToUniversalTime() . Per altre informazioni, vedere Get-Date.

Se non si include un timestamp nel valore per questo parametro, il timestamp predefinito è 12:00 AM (mezzanotte) alla data specificata.

Type:ExDateTime
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-Formattato

L'opzione formattata genera gli attributi che vengono in genere restituiti come numeri interi (ad esempio, RecordType e Operation) per essere formattati come stringhe descrittive. Con questa opzione non è necessario specificare alcun valore.

Inoltre, questa opzione rende AuditData più leggibile.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-FreeText

Il parametro FreeText consente di filtrare le voci di log in base alla stringa di testo specificata. Se il valore contiene degli spazi, è necessario racchiuderlo tra virgolette (").

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-IPAddresses

Il parametro IPAddresses consente di filtrare le voci di log in base agli indirizzi IP specificati. È possibile specificare più indirizzi IP separati da virgole.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-Objectids)

Il parametro objectids) consente di filtrare le voci di log in base all'ID oggetto. L'ID oggetto è l'oggetto di destinazione su cui è stato eseguito il comportamento e dipende dai valori di RecordType e Operations dell'evento. Ad esempio, per le operazioni di SharePoint, l'ID oggetto è il percorso URL di un file, una cartella o un sito. Per le operazioni di Azure Active Directory, l'ID oggetto è il nome dell'account o il valore GUID dell'account.

Il valore di ObjectId viene visualizzato nella proprietà AuditData (nota anche come dettagli) dell'evento.

È possibile immettere più valori separati da virgole. Se i valori contengono spazi o altrimenti richiedono virgolette, utilizzare la sintassi seguente: "Value1","Value2",..."ValueN" .

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-Operazioni

Il parametro Operations consente di filtrare le voci di log in base all'operazione. I valori disponibili per questo parametro dipendono dal valore RecordType. Per un elenco dei valori disponibili per questo parametro, vedere attività controllate.

È possibile immettere più valori separati da virgole. Se i valori contengono spazi o altrimenti richiedono virgolette, utilizzare la sintassi seguente: "Value1","Value2",..."ValueN" .

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-RecordType

Il parametro RecordType consente di filtrare le voci di log per tipo di record. Per informazioni dettagliate sui valori disponibili, vedere AuditLogRecordType.

Type:AuditRecordType
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-ResultSize

Il parametro ResultSize consente di specificare il numero massimo di risultati da restituire. Il valore predefinito è 100, Maximum è 5.000.

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-SessionCommand

Il parametro SessionCommand consente di specificare la quantità di informazioni restituite e la modalità di organizzazione. I valori validi sono:

  • ReturnLargeSet: questo valore determina la restituzione dei dati non ordinati da parte del cmdlet. Se si utilizza il paging, è possibile accedere a un massimo di 50.000 risultati. Questo è il valore consigliato se un risultato ordinato non è necessario ed è stato ottimizzato per la latenza della ricerca.
  • ReturnNextPreviewPage: questo valore induce il cmdlet a restituire i dati ordinati alla data. Il numero massimo di record restituiti tramite l'utilizzo di paging o il parametro ResultSize è 5.000 record.

Nota: utilizzare sempre lo stesso valore di SessionCommand per un determinato valore SessionID. Non passare da ReturnLargeSet a ReturnNextPreviewPage per lo stesso ID di sessione. In caso contrario, l'output è limitato a 10.000 risultati.

Type:UnifiedAuditSessionCommand
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-SessionId

Il parametro SessionId consente di specificare un ID fornito sotto forma di stringa per identificare un comando (il cmdlet e i relativi parametri) che verrà eseguito più volte per restituire i dati di paging. SessionId può essere qualsiasi valore stringa scelto.

Quando il cmdlet viene eseguito in sequenza con lo stesso ID sessione, il cmdlet restituisce i dati in blocchi sequenziali delle dimensioni specificate da ResultSize.

Per un determinato ID di sessione, se si utilizza il valore SessionCommand ReturnLargeSet e quindi si utilizza il valore SessionCommand ReturnNextPreviewPage, i risultati sono limitati a 10.000 record. Per avere tutti i record 50.000 disponibili, utilizzare sempre il valore ReturnLargeSet ogni volta che si esegue il cmdlet per lo stesso ID di sessione.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-SiteIds

Il parametro SiteIds consente di filtrare le voci di log in base all'ID sito. È possibile specificare più valori separati da virgole.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-StartDate

Il parametro StartDate consente di specificare la data di inizio dell'intervallo di date. Le voci vengono archiviate nel log di controllo unificato in formato UTC (Coordinated Universal Time). Se si specifica un valore data/ora senza un fuso orario, il valore è in formato UTC.

Per specificare un valore data/ora per questo parametro, utilizzare una delle opzioni seguenti:

  • Specificare il valore data/ora in UTC: ad esempio, "2018-05-06 14:30:00z" .
  • Specificare il valore data/ora come formula che converte la data/ora nel fuso orario locale in ora UTC: ad esempio, (Get-Date "5/6/2018 9:30 AM").ToUniversalTime() . Per altre informazioni, vedere Get-Date.

Se non si include un timestamp nel valore per questo parametro, il timestamp predefinito è 12:00 AM (mezzanotte) alla data specificata.

Type:ExDateTime
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online
-UserIds

Il parametro UserIds consente di filtrare le voci del log in base all'ID dell'utente che ha eseguito l'azione.

È possibile immettere più valori separati da virgole. Se i valori contengono spazi o altrimenti richiedono virgolette, utilizzare la sintassi seguente: "Value1","Value2",..."ValueN" .

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
Applies to:Exchange Online

Input

Output