Condividi tramite


Come usare i log di controllo delle cassette postali in Microsoft 365

In Microsoft 365 è possibile eseguire i log di controllo delle cassette postali per determinare quando una cassetta postale è stata aggiornata in modo imprevisto o se gli elementi non sono presenti in una cassetta postale. Ad esempio, potrebbe essere necessario eseguire questa operazione se gli elementi vengono spostati o se vengono eliminati in modo imprevisto o non corretto.

Nota: per impostazione predefinita, per l'ambiente vNext i log di controllo delle cassette postali non sono abilitati. La funzionalità deve essere attivata affinché un utente inizi una ricerca.

Come eseguire e controllare i log di controllo delle cassette postali

La registrazione di controllo delle cassette postali consente agli utenti di ottenere informazioni sulle azioni eseguite da utenti non proprietari e amministratori. La registrazione di controllo delle cassette postali è disponibile per i membri del gruppo self-service Audit Reporting Mailbox solo tramite Windows Remote PowerShell.

Note

  • Per impostazione predefinita, è abilitata solo la registrazione di controllo delle cassette postali non proprietarie e la registrazione di controllo delle cassette postali del proprietario è disabilitata. Se è necessario eseguire la registrazione di controllo delle cassette postali del proprietario per analizzare un problema specifico, è possibile abilitare temporaneamente il processo per due settimane.
  • Alcune organizzazioni potrebbero non consentire l'uso della registrazione di controllo delle cassette postali. In questo caso, la funzionalità verrà disattivata.

Per analizzare questo problema, creare e usare uno script di Windows PowerShell usando lo script di esempio fornito nel passaggio 1 di questa sezione e quindi personalizzare una ricerca. Per impostazione predefinita, è possibile analizzare le azioni eseguite da non proprietari e amministratori. Questo script esporta contenuto in un file di valori delimitati da virgole (.csv) semplificato per risolvere i problemi relativi ai report relativi agli elementi mancanti o aggiornati in modo imprevisto.

Importante

I clienti sono invitati a usare questo script di esempio. Lo script viene fornito da Microsoft Online Services per facilitare determinate indagini. Gli script di Microsoft Online Services sono generici e devono essere utilizzabili in tutti gli ambienti dei clienti. Se si verificano errori durante l'esecuzione di uno script, il contenuto dello script deve essere usato come esempio per creare uno script personalizzato per un determinato ambiente cliente. Microsoft Online Services fornisce lo script per comodità ai clienti di Microsoft 365 senza garanzia, espressa o implicita.

Passaggio 1: Eseguire lo script

Per eseguire lo script, seguire questa procedura:

  1. Aprire un editor di testo, ad esempio Blocco note, e quindi copiare il codice seguente nel file. Il codice usa il search-mailboxAuditLog comando che fa parte di Microsoft Exchange Server.

     param ([PARAMETER(Mandatory=$TRUE,ValueFromPipeline=$FALSE)]
    [string]$Mailbox,
    [PARAMETER(Mandatory=$TRUE,ValueFromPipeline=$FALSE)]
    [string]$StartDate,
    [PARAMETER(Mandatory=$TRUE,ValueFromPipeline=$FALSE)]
    [string]$EndDate,
    [PARAMETER(Mandatory=$FALSE,ValueFromPipeline=$FALSE)]
    [string]$Subject,
    [PARAMETER(Mandatory=$False,ValueFromPipeline=$FALSE)]
    [switch]$IncludeFolderBind,
    [PARAMETER(Mandatory=$False,ValueFromPipeline=$FALSE)]
    [switch]$ReturnObject)
    BEGIN {
      [string[]]$LogParameters = @('Operation', 'LogonUserDisplayName', 'LastAccessed', 'DestFolderPathName', 'FolderPathName', 'ClientInfoString', 'ClientIPAddress', 'ClientMachineName', 'ClientProcessName', 'ClientVersion', 'LogonType', 'MailboxResolvedOwnerName', 'OperationResult')
      }
      END {
        if ($ReturnObject)
        {return $SearchResults}
        elseif ($SearchResults.count -gt 0)
        {
        $Date = get-date -Format yyMMdd_HHmmss
        $OutFileName = "AuditLogResults$Date.csv"
        write-host
        write-host -fore green "Posting results to file: $OutfileName"
        $SearchResults | export-csv $OutFileName -notypeinformation -encoding UTF8
        }
        }
        PROCESS
        {
        write-host -fore green 'Searching Mailbox Audit Logs...'
        $SearchResults = @(search-mailboxAuditLog $Mailbox -StartDate $StartDate -EndDate $EndDate -LogonTypes Owner, Admin, Delegate -ShowDetails -resultsize 50000)
        write-host -fore green '$($SearchREsults.Count) Total entries Found'
        if (-not $IncludeFolderBind)
        {
        write-host -fore green 'Removing FolderBind operations.'
        $SearchResults = @($SearchResults | ? {$_.Operation -notlike 'FolderBind'})
        write-host -fore green 'Filtered to $($SearchREsults.Count) Entries'
        }
        $SearchResults = @($SearchResults | select ($LogParameters + @{Name='Subject';e={if (($_.SourceItems.Count -eq 0) -or ($_.SourceItems.Count -eq $null)){$_.ItemSubject} else {($_.SourceItems[0].SourceItemSubject).TrimStart(' ')}}},
        @{Name='CrossMailboxOp';e={if (@('SendAs','Create','Update') -contains $_.Operation) {'N/A'} else {$_.CrossMailboxOperation}}}))
        $LogParameters = @('Subject') + $LogParameters + @('CrossMailboxOp')
        If ($Subject -ne '' -and $Subject -ne $null)
        {
        write-host -fore green 'Searching for Subject: $Subject'
        $SearchResults = @($SearchResults | ? {$_.Subject -match $Subject -or $_.Subject -eq $Subject})
        write-host -fore green 'Filtered to $($SearchREsults.Count) Entries'
        }
        $SearchResults = @($SearchResults | select $LogParameters)
        }
    
  2. Scegliere Salva con nome dal menu File.

  3. Nella casella Salva con nome selezionare Tutti i file.

  4. Nella casella Nome file immettere Run-MailboxAuditLogSearcher.ps1 e quindi selezionare Salva.

  5. Aprire Windows PowerShell e quindi connettersi a Windows Remote PowerShell.

  6. Individuare la cartella in cui è stato salvato lo script e quindi eseguire lo script:

    .\Run-MailboxAuditLogSearcher.ps1
    

    Note

    • Se si esegue lo script senza parametri, vengono richiesti i parametri predefiniti seguenti:
      • Cassetta postale
      • StartDate
      • EndDate
    • Per cercare le voci del giorno corrente, aggiungere un giorno al valore della data di fine nella finestra del prompt. Ad esempio, se la data corrente è 14/3/2017 e si vuole includere il giorno corrente nella ricerca, immettere 3/15/2017 come data di fine.

In Microsoft 365, le voci di registrazione di controllo delle cassette postali vengono mantenute nella cassetta postale per 90 giorni. Viene richiesto di indicare una data di inizio e una data di fine per la ricerca. È possibile usare diversi parametri facoltativi per personalizzare la ricerca. Per una descrizione di questi parametri, vedere la sezione "Altre informazioni".

Se gli elementi vengono trovati dopo l'esecuzione dello script, viene visualizzato un messaggio simile al seguente:

Ricerca nei log di controllo delle cassette postali...
11 Totale voci trovate
Rimozione delle operazioni FolderBind.
Filtrato in base a 1 voci

Pubblicazione dei risultati nel file: AuditLogResults121024_142419.csv

Screenshot del messaggio dopo l'esecuzione dello script.

Questo messaggio di esempio indica che il processo di ricerca ha trovato 11 voci. Per impostazione predefinita, le voci FolderBind vengono filtrate e i tipi di operazione seguenti rimangono:

  • Copia
  • Creazione
  • HardDelete
  • MessageBind
  • Sposta
  • MoveToDeletedItems
  • SendAs
  • SendOnBehalf
  • SoftDelete
  • Update

Note

L'operazione FolderBind indica gli orari in cui la cassetta postale è accessibile da un non proprietario. Questa è l'operazione più comune. Non è necessario visualizzare le operazioni FolderBind quando si esamina un elemento che viene aggiornato o eliminato.

Esaminare l'output del file di .csv. Le colonne più utili vengono esportate e alcune di queste colonne vengono unite per semplificare la revisione dell'output. Per altre informazioni sulle colonne esportate, vedere la sezione "Altre informazioni".

Registrazione di controllo delle cassette postali del proprietario

La registrazione di controllo delle cassette postali è attivata per impostazione predefinita per tutte le organizzazioni. Uno dei principali vantaggi dell'abilitazione del controllo delle cassette postali per impostazione predefinita è che non è necessario gestire le azioni delle cassette postali controllate. Microsoft gestisce automaticamente queste azioni e le nuove azioni della cassetta postale vengono aggiunte automaticamente per essere controllate per impostazione predefinita man mano che vengono rilasciate.

Tuttavia, l'organizzazione potrebbe dover controllare un set diverso di azioni della cassetta postale per le cassette postali degli utenti e le cassette postali condivise. Per altre informazioni su come modificare le azioni della cassetta postale controllate per ogni tipo di accesso e su come ripristinare le azioni predefinite gestite da Microsoft, vedere Modificare o ripristinare le azioni della cassetta postale registrate per impostazione predefinita.

Ulteriori informazioni

Parametri di script facoltativi

L'elenco seguente descrive i parametri facoltativi che generano risultati diversi quando vengono usati insieme allo Run-MailboxAuditLogSearcher script:

  • IncludeFolderBind: impedisce che l'operazione FolderBind venga filtrata dall'output. È possibile usare le informazioni FolderBind per analizzare il problema di accesso alle cassette postali.

    Ad esempio, il cmdlet seguente cerca la cassetta postale "Test User 1" e include tutte le operazioni:

    .\Run-MailboxAuditLogSearcher.ps1 -IncludeFolderBind -Mailbox "<Test User 1gt;" -StartDate "<04/10/17gt;" -EndDate "<04/27/17gt;&quot
    
  • Oggetto: consente di specificare l'oggetto di un elemento per limitare la ricerca di operazioni eseguite su tale elemento.

    Ad esempio, il cmdlet seguente filtra tutti gli output tranne gli elementi con l'oggetto impostato come "Good News":

    .\Run-MailboxAuditLogSearcher.ps1 -Subject "<Good News>" -Mailbox "<test1@contoso.comgt;" -StartDate "<04/10/17gt;" -EndDate "<04/27/17gt;&quot
    
  • ReturnObject: fa sì che i risultati vengano visualizzati sullo schermo ( ma non vengono esportati in un file di .csv).

    Ad esempio, il cmdlet seguente visualizza l'output sullo schermo:

    .\Run-MailboxAuditLogSearcher.ps1 -ReturnObject -Mailbox "<Test User 1gt;" -StartDate "<04/10/17gt;" -EndDate "<04/27/17gt;&quot
    

Colonne esportate dal file .csv

Le colonne più utili del file .csv vengono esportate. Alcune di queste colonne vengono unite per semplificare la revisione dell'output. Nella tabella seguente sono elencate le colonne esportate.

Colonna Descrizione
Oggetto Oggetto dell'elemento
Operazione Azioni eseguite sull'elemento
LogonUserDisplayName Nome visualizzato dell'utente connesso
LastAccessed Ora in cui è stata eseguita l'operazione
DestFolderPathName Cartella di destinazione per l'operazione di spostamento
FolderPathName Percorso della cartella
ClientInfoString Dettagli sul client che esegue l'operazione
LastAccessed Indirizzo IP per il computer client
ClientMachineName Nome del computer client
ClientProcessName Nome del processo dell'applicazione client
ClientVersion Versione dell'applicazione client
LogonType Il tipo di accesso dell'utente che esegue l'operazione

Nota Tipi di accesso include quanto segue:
- Delegato per non proprietario
- Amministratore - Proprietario
cassetta postale (non registrato per impostazione predefinita)
MailboxResolvedOwnerName Nome risolto dell'utente

della cassetta postale Nota
Il nome risolto è nel formato seguente:
Domain\SamAccountName
OperationResult Lo stato dei risultati dell'operazione Nota operazione include i seguenti:
- Failed
- PartiallySucceeded
- Succeeded

CrossMailboxOperation Informazioni sul fatto che l'operazione registrata sia un'operazione tra cassette postali( ad esempio, la copia o lo spostamento di messaggi tra cassette postali)

Altre informazioni sulla registrazione di controllo delle cassette postali

  • Il cmdlet Search-MailboxAuditLog viene usato nello script di esempio del passaggio 1 per cercare in modo sincrono una singola cassetta postale. A tale scopo, è anche possibile eseguire il cmdlet in Windows Remote PowerShell.

    Per altre informazioni sul cmdlet, vedere l'articolo TechNet seguente:

    Search-MailboxAuditLog

  • È possibile cercare una o più cassette postali in modo asincrono. A tale scopo, eseguire il cmdlet seguente in Windows Remote PowerShell:

    New-MailboxAuditLogSearch
    

    Per altre informazioni su questo cmdlet, vedere l'articolo seguente:

    New-MailboxAuditLogSearch

    Per altre informazioni sulle voci di registrazione di controllo delle cassette postali predefinite, vedere la sezione "Voci del log di controllo delle cassette postali" dell'articolo seguente:

    Registrazione di controllo delle cassette postali in Exchange 2016