Skip to content

PRA Cloud Mailbox 1.0.0

Choose a tag to compare

@Nico77600 Nico77600 released this 08 Oct 16:00
· 20 commits to main since this release

First public release of PRA Cloud Mailbox, the tool of the Exchange disaster recovery scenario 2: Active Directory, Exchange and Entra Connect are lost at the same time.

  • Collect (Windows PowerShell 5.1, every day on an Exchange server): mailboxes, GUIDs, X500 addresses and the shared mailbox permissions (FullAccess with AutoMapping, SendAs, SendOnBehalf, groups expanded) into a SQLite snapshot — after the disaster nothing on-premises can be read.
  • Check (PowerShell 7, read-only): is every object ready? Entra ID object, Exchange Online recipient, licences, permissions of the app registration.
  • Convert (disaster): the identities move to cloud management and get an Exchange plan — licence group (cloud or synchronised from AD), Kiosk plan of the Teams licence, or direct licence. The Teams storage of each user becomes his mailbox, with his chats. Shared mailboxes are converted one after another with one temporary licence unit, tagged, with the permissions of the snapshot.
  • Recover (infrastructure rebuilt): the identities go back to AD; the users' cloud data stays under an eDiscovery case hold, the cloud shared mailboxes become inactive mailboxes and Entra Connect recreates their objects. Licences are put back exactly as they were. No mail is deleted.
  • Preview by default, one confirmation, a batch ID and a journal with the original state of every object; every run resumes where the previous one stopped.

Validated in a lab (Exchange Server SE, Entra Connect 2.6, Microsoft 365 E5 with Teams): every action and every licensing mode, shared mailboxes, waves, Entra Connect remoting (developer guide, appendix B). Offline test gate: Pester (PowerShell 7: 100 passed; Windows PowerShell 5.1: 82 passed), including end-to-end scenarios against an in-memory tenant; PSScriptAnalyzer clean.

Package: PraCloudMailbox-1.0.0.zip contains only the files needed to run (script, modules, SQLite engine, templates, configuration with empty environment values, samples) and both guides in HTML (light and dark theme). Unblock the files after extracting them (see the README), then start with the user guide.