PowerShell e Office 365: recupero della posta cancellata
Tutto quello che ti serve sapere per gestire la posta eliminata e recuperabile tramite Outlook o WebMail, è contenuto all’interno della documentazione di Microsoft, la trovi all’indirizzo support.office.com/it-it/article/Recuperare-elementi-o-messaggi-di-posta-elettronica-eliminati-in-Outlook-Web-App-c3d8fc15-eeef-4f1c-81df-e27964b7edd4.
E se questo non bastasse? Se ti toccasse di dover mettere mano al server via PowerShell?
Cosa c’è da sapere
È tutta una questione di ruoli, tipicamente non assegnati al proprio gruppo di appartenenza, neanche se si fa parte degli amministratori. Per partire servirà quindi accedere all’interfaccia di amministrazione di Office 365 → ECP (Exchange Control Panel), andare in Permissions → Admin Roles, quindi fare clic su Organization Management:
Questo ti permetterà di aggiungere il ruolo di “Mailbox Import Export” a quelli previsti dal gruppo, del quale gli amministratori del tenant fanno certamente parte (verificalo ugualmente, non si sa mai). Servirà ad aggiungere comandi disponibili (e richiamabili) da PowerShell:

Dopo aver salvato la modifica, lancia la PowerShell e collegati al tuo server Exchange in Cloud, avrai a disposizione più comandi nella sessione remota, tra i quali quelli dedicati al “Search-Mailbox“, fondamentale, tra le altre cose, per i recuperi della posta eliminata. Nel mio caso ho provato a ripristinare tutte le mail ricevute e inviate in un particolare intervallo di tempo, tradotto in codice PowerShell si ottiene qualcosa di simile a:
Search-Mailbox -Identity shared@contoso.com -SearchQuery {sent:"01/01/2015..13/05/2016" OR received:"01/01/2015..13/05/2016"} -TargetMailbox admin1@contoso.com -TargetFolder "Recovery" -LogLevel FullLa stringa mi ha permesso di recuperare tutto quello che è stato inviato o ricevuto dal primo gennaio 2015 al 13 maggio del 2016. Il comando
Search-Mailbox
accetta il parametro -Identity shared@contoso.com
(shared@contoso.com può essere sostituito con qualsiasi altro indirizzo
di posta gestito dal proprio Exchange) attraverso il quale dirgli su
che casella dovrà andare a lavorare. La SeachQuery
permette diversi parametri, puoi trovare alcuni riferimenti in Technet, all’indirizzo technet.microsoft.com/en-us/library/dd298064(v=exchg.150).aspx. Recovery
è una cartella (la TargetFolder
) appositamente creata nella casella di posta dell’amministratore (che corrisponde alla TargetMailbox
), all’interno della quale verrà riprodotto l’albero delle cartelle della casella di posta sorgente (shared@contoso.com
) e inserite tutte le mail recuperate.In alternativa, puoi provare a recuperare esclusivamente le mail cancellate (e non più presenti nel cestino), in villeggiatura nel cassonetto (Dumpster), un po’ quello che è possibile fare dalla WebMail di Outlook (OWA) o dalla funzione Recupera elementi eliminati dal server del client Outlook di Office (installato in locale):
Search-Mailbox -Identity shared@contoso.com -SearchDumpsterOnly -TargetMailbox admin1@contoso.com -TargetFolder "Recovery"Vale quanto già detto prima,
Recovery
resta la cartella di recupero mail (dove verrà creata una finta struttura ad albero, che stavolta presenterà esclusivamente i Recoverable items), la casella utilizzata per appoggiare
il risultato ottenuto è quella di un amministratore di Exchange (ma
puoi indicare anche quella di un utente qualsiasi), la sorgente (shared@contoso.com
)
è una casella di posta condivisa, ma anche stavolta è possibile
sostituirla con qualsiasi altra casella di posta elettronica gestita
dall’Exchange.Ti propongo ulteriori fonti per poter scoprire qualcosa in più riguardo questo tipo di casi da affrontare:
- Search-Mailbox cmdlet community.office365.com/en-us/f/158/t/60932
- Esempi di utilizzo del range di date serverfault.com/questions/531973/exchange-2010-search-mailbox-specific-date-range
- Recover Deleted Items from Exchange Dumpster exchangenerd.com/2014/04/recover-deleted-items-from-exchange-dumpster
- Recovering deleted mail items using PowerShell cmdlets Search-Mailbox o365info.com/recovering-deleted-mail-items-using-powershell-cmdlets-search-mailbox-part-7-7
L’operazione, una volta lanciata, durerà del tempo. Prenditi una pausa, fai altro, sgranchisci gambe e schiena, al termine verrai avvisato con tanto di statistiche sul recupero (quante mail sono state trovate e riportate in vita, quanto tempo è passato, ecc.), ora non resta che incrociare qualsiasi dito possibile e verificare di aver recuperato tutto ciò che serve al tuo utente.
Commenti
Posta un commento