Exchange Online – Disaster Recovery

By: Caio Ribeiro César

Quando falamos de Disaster Recovery (DR) em Exchange Online, logicamente não estamos nos referindo a nenhum DR de Exchange Server. Disaster Recovery em ambiente EXO é a recuperação de mailboxes ou de emails.

escrevemos sobre a recuperação de mailboxes no ambiente online e concluímos que é necessário habilitar a funcionalidade de Litigation Hold para ter mais opções em DR. Para a recuperação de e-mails específicos, a mesma regra se aplica: habilitar Litigation Hold é uma segurança em recuperação de dados.

Neste artigo, decidi fazer um vídeo que detalha melhor os cenários já discutidos anteriormente e o cenário atual. O vídeo que acompanha a DEMO do processo descrito neste post está disponível no final do texto.

Irei focar no que chamamos de Single Item Recovery (SIR) ou recuperação de e-mails específicos. Para isto, devo esclarecer o que é suportado em cenários SIR (supportability). O suporte irá auxiliar caso um comando de recuperação de e-mails falhe com um erro específico (Search-Mailbox), se confirmarmos que os dados ainda existem.

A recuperação de e-mails removidos pelo administrador ou usuário final (permanently delete ou até um store-hard-delete) sem litigation hold habilitado em que a ação ultrapassa o limite de SIR (14 dias) não faz parte do escopo de suporte – aliás o suporte não irá atuar em SIR, atuaremos apenas se o administrador está seguindo o procedimento correto e o comando ou processo está falhando (break&fix). Por exemplo, se 100 e-mails de uma mailbox foram removidos via hard delete, ao invés de abrir um chamado de suporte para a recuperação, o administrador deve recuperá-los utilizando as ferramentas disponíveis e discutidas neste blog.

SIR em Exchange Online

Conforme mencionado anteriormente, o período padrão de retenção de mensagens removidas é de 14 dias – podendo ser alterado para no máximo 30 dias. A alteração além deste período no mailbox database ou mailbox-specific é algo possível on-premises, mas não no Exchange Online [ atualização: mailbox-specific está agora disponível para o Exchange Online pelo comando Set-Mailbox ].

Quando um administrador ou usuário removem e-mails permanentemente, estes e-mails são movidos para uma subpasta localizada dentro da mailbox. Esta subpasta (DiscoveryHolds/Purges) não é visível para o usuário final (via OWA/Outlook), mas podemos efetuar acesso via MFCMapi ou até recuperar estes dados pelo comando Search-Mailbox.

Para o administrador alcançar o objetivo de reter as mensagens removidas permanentemente ou purged para um valor acima de 14 dias, ele deve habilitar Litigation Hold para as mailboxes em questão. Ao acionar o Litigation Hold em mailboxes específicas, o processo de Managed Folder Assistant não remove os dados das subpastas mencionadas anteriormente.

Se o administrador não habilitou Litigation e um e-mail foi removido via store-delete ou permanentemente pelo usuário final, temos que ficar atentos ao período fixo de retenção de SIR (14 dias). Caso este limite seja ultrapassado, não existe a possibilidade de recuperação de dados.

SIR – MFCMapi

Irei ilustrar as subpastas mencionadas anteriormente e os dados da minha mailbox que foram "purged".

O MFCMapi pode funcionar para a recuperação de dados, porém recomendamos a utilização do powershell para a mesma recuperação em múltiplas mailboxes.

  1. Usuário final efetua um shift+delete de uma mensagem (ou o próprio admin efetua um purge via Exchange Online)

  1. O e-mail é removido.
  2. Utilizamos o MFCMapi
    em modo online para acessar a mailbox

    

    

    

  1. Copiamos os dados da subpasta "Purges" para uma pasta do usuário final. Se o MFCMapi não estiver em modo online, a pasta "Recoverable Items" não será listada.

    

    

            

    

    

SIR – PowerShell

Efetuar SIR pelo powershell é a melhor opção para diversas mailboxes. Utilizamos o comando "Search-Mailbox" para alcançar nosso objetivo:

  1. Adicione a permissão de Discovery Management para o administrador que irá efetuar o restore

  1. O usuário final "jude" efetua um shift+del ou um administrador efetua um purge de dados deseta mailbox.

    

  1. Efetuamos o restore de dados via "Search-Mailbox":

    Cmdlet:

    Get-Mailbox *discovery* | fl Identity

    Identity : DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}

    Search-Mailbox -Identity jude@c4iocesar.onmicrosoft.com -SearchDumpsterOnly -    IncludeUnsearchableItems -TargetMailbo

    x "DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}" -TargetFolder "Jude" -LogLevel     Full

    WARNING: The Search-Mailbox cmdlet returns up to 10000 results per mailbox if a search query is     specified. To return more than 10000

    results, use the New-MailboxSearch cmdlet or the In-Place eDiscovery & Hold console in the Exchange     Administration Center.

    RunspaceId : fb022d3d-3583-4cbe-883b-75ea50deba68

    Identity : jude

    TargetMailbox : DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}

    Success : True

    TargetFolder : \Jude\jude-3/29/2016 5:20:00 PM

    ResultItemsCount : 5

    ResultItemsSize : 71.66 KB (73,378 bytes)

  1. Exportamos os e-mails da Discovery Mailbox de volta para a mailbox do usuário final:

Cmdlet:

Search-Mailbox -Id "DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-    7E09334BB852}" -TargetMailbox jude@c4iocesar.onmicrosoft.com -TargetFolder RecoveredEmails

WARNING: The Search-Mailbox cmdlet returns up to 10000 results per mailbox if a search query     is specified. To return more than 10000 results, use the New-MailboxSearch cmdlet or the In-Place eDiscovery & Hold console in the Exchange Administration Center.

RunspaceId : fb022d3d-3583-4cbe-883b-75ea50deba68

Identity : DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}

TargetMailbox : jude

Success , : True

TargetFolder : \RecoveredEmails\Discovery Search Mailbox-3/29/2016 5:33:31 PM

ResultItemsCount : 6

ResultItemsSize : 80.92 KB (82,866 bytes)

Opcional: com muito cuidado, após a confirmação de que os dados estão seguros, efetuo a limpeza de dados na Discovery Mailbox:

Search-Mailbox -Id "DiscoverySearchMailbox{D919BA05-46A6-415f-80AD-7E09334BB852}" -DeleteContent -Force

  • Para SIR massivo, utilize strings para resultados de "get-mailbox" juntamente com o "|" em Search-Mailbox – assim conforme detalhado no quarto exemplo do artigo da Microsoft.