Warning user’s on-premises mailbox hasn’t been migrated to Exchange Online
I have been working with Office 365 for the last three days. This error provided hours of enjoyment.
There is no on-premise exchange server. So WTF!
After many hours of troubleshooting I have a resolution.
Remove the synchronization of the attribute msExchMailboxGuid to Office 365
We first need to alter the directory synchronization behavior for all AD mailboxes
- Open Explorer
- Navigate to C:Program FilesMicrosoft Online Directory SyncSYNCBUSUIShell
- Launch miisclient.exe
- Click on the Management Agents tab at the top
- Right-click on the Windows Azure Active Directory Connector and select Properties
- Click on Configure Attribute Flow from the navigation pane
- Expand the node Object Type: user within the Configure Attribute Flow section
- Locate and select the mapping for the attribute msExchMailboxGuid
- Click the Delete button which will remove the selected mapping
- Click OK to save the changes
Remove the account from office 365
- Remove the license from the user
- Disable Azure Directory Sync
- Download Windows Azure Active Directory Module for Windows PowerShell
- Open the powershell: Windows Azure Active Directory Module for Windows PowerShell
- Type:
Connect-MsolService – then enter your O365 login information.
Get-msoluser –userPrincipalName [email of user] – this shows you that they exist, if true continue
-
Remove-msoluser –userPrincipalName [email]
- Type Yes
-
Remove-msoluser –userPrincipalName [email] –removeFromRecycleBin
- Type Yes
- Enable Azure Directory Sync
- Wait 30 minutes
Add the user back
- Confirmed the user has been created
- Assigned a license to the user
- Make sure that you DON’T get the message: “This user’s on-premises mailbox hasn’t been migrated to Exchange Online. The Exchange Online mailbox will be available after migration is completed. Learn more about email migration”
- Confirm that the mailbox has been created
As soon as the mailbox show the correct email address I was jumping for joy.