Tools4ever‘s UMRA has supported Live@EDU, Office 365, and Exchange 2010 Online for sometime now. I have built a number of projects integrating with all of the above, but it wasn’t until recently that I got burned with the new “Ghost Mailboxes” feature recently added in Live@EDU.
New Feature
A new feature of the Exchange 2010 Online (should be applicable to both Office 365 & Live@EDU, though I have only worked with this in context of Live@EDU) prevents “instant” mailbox deletion – instead, deleted mailboxes are placed in “deleted, but recoverable” state, which prevents the username from being used for any new accounts, but keeps it from showing up in the standard Get-Mailbox commands.
Furthermore, the “deleted, but recoverable” mailbox can have 2 possible states:
State 1: Soft Deleted
This applies to mailboxes that were never used before. These cannot be accessed via Get-DeletedMailbox commands. We have been able to recover such mailboxes using the Undo-SoftDeletedMailbox command.
State 2: Hard Deleted
Vica versa, these are mailboxes that were previously used. These can be accessed via the Get-DeletedMailbox and I’m assuming there are special commands for recovering mailboxes in this state.
Admin Control Panel
This is where I find Microsoft’s offering really lacking – there are no differentiation between the two states and no ability to search:
In anything other than <1000 user domain, this control panel is pretty much useless, since you’re only shown the “last 1000”.
Furthermore, I have witnessed different behavior when using PowerShell commands vs. using the control panel – i.e. I cannot delete a mailbox and then re-create a user with the same name via PowerShell, but I am able to do so via the GUI control panel. I bet it has something to do with this (which I believe to be an isolated Live@EDU feature, so I won’t dwell any deeper for now):
Takeaways
- Deleting a mailbox can “tie up” the username and make it unusable for new accounts
- A good idea would be to rename mailboxes before deleting them (i.e. jsmith2012@…)
- Expect PowerShell work when dealing with these, as GUI control panel support is very limited