Let’s say that your organization is in Exchange hybrid setup and you already migrated some mailboxes to Exchange Online. Now you need to convert some of those migrated user mailboxes to shared mailboxes. How do you do this? This is a question that we get from our customers a lot.
The tricky part here arises because the mailboxes have already been migrated to Exchange Online. This means you can’t simply use Set-RemoteMailbox -Type Shared as per the documentation. Moreover, because they’re objects that are synced from Active Directory (AD) just modifying them from the Exchange admin center in the cloud won’t work because the object is mastered on-premises. Finally, you might have used Set-RemoteMailbox -Type Shared from on-premises without errors/warnings, but the change doesn’t replicate to Exchange Online even after forced syncs.
How to check if the mailbox was already migrated?
From PowerShell connected to Exchange Online, you can check the RemoteRecipientType value using Get-Mailbox:
If the mailbox you want to convert has a type of ProvisionMailbox, you can use the Exchange Management Shell to run Set-RemoteMailbox -Type Shared. That cmdlet has been available since Exchange 2013 CU21/Exchange 2016 CU10.
My mailbox says ‘Migrated’, so what’s the next step to convert it?
If the environment permits it, you can offboard, convert while on-premises, and then migrate back to Exchange Online. This will ensure the right values on mailbox attributes and the recipient type details will be respected by both directories.
If you’ve already used Set-RemoteMailbox -Type Shared on-premises, you’ll notice that you don’t get an error/warning even if the mailbox is Migrated and that, when looking at the object on-premises, the remote mailbox is a Shared mailbox, while the cloud considers it a UserMailbox (in next screenshots, I used red for highlighting the UserMailbox values and green for SharedMailbox):
Exchange Management Shell on-premises shows the following:
While Exchange Online shows:
To get things “in sync” you have to do the conversion again cloud-side, either from the Exchange admin center or Exchange Online PowerShell by running Set-Mailbox -Type Shared for the mailbox:
Since the values coming from on-premises through AAD Connect are correct, there is no risk of it overwriting unwanted values during the next sync.
If you already converted to SharedMailbox in the cloud and this value is getting overwritten with UserMailbox because you don’t have the appropriate values on-premises, you’ll need to also do the necessary changes from on-premises as per this guidance. That will ensure that the wanted values are in place to match the action you wanted after the next sync.
If you are trying to convert to a Shared mailbox, removing the license should be done after seeing it the mailbox marked as Shared in Exchange Online. Similarly, if the goal is to convert the mailbox to Regular, the license should be assigned prior to conversion so that the mailbox always has the proper license in place (and to avoid any accidental mailbox data deletions). While shared mailboxes generally do not require a license, there are scenarios when they do (see this).
Thank you for your help and review on this to Mukesh Kumar and Nino Bilic.