How to create a shared mailbox in Office 365 in hybrid environments?
Why can’t people send to the newly created shared mailbox, I created weeks ago, on Exchange Online, in my hybrid environment?
Well, as of writing this article, you do NOT create shred mailboxes in Exchange Online, when you have a hybrid environment, you do this (Microsoft Article):
Note
The Hybrid Configuration wizard that’s included in the Exchange Management Console in Microsoft Exchange Server 2010 is no longer supported. Therefore, you should no longer use the old Hybrid Configuration wizard. Instead, use the Office 365 Hybrid Configuration wizard. For more information, see Office 365 Hybrid Configuration wizard for Exchange 2010.
Problem
Consider the following scenario:
- You have a hybrid deployment of on-premises Microsoft Exchange Server and Microsoft Exchange Online in Office 365.
- You create a shared mailbox directly in Exchange Online.
- You assign Full Access permissions to one or more users.
In this scenario, you experience one or more of the following issues:
- Users can’t open the shared mailbox in Outlook.
- Users can’t view free/busy information for the shared mailbox.
- Users can’t send mail to the shared mailbox.
Cause
These issues can occur if the shared mailbox is created by using the Exchange Online management tools. In this situation, the on-premises Exchange environment has no object to reference for the shared mailbox. Therefore, all queries for that SMTP address fail.
Solution
Create a remote mailbox in the on-premises environment, and then move the mailbox to Exchange Online. To do this, follow these steps.
Note
For on-premises environments that use Exchange Server 2013 (cumulative update 21 or later versions) or Exchange Server 2016 (cumulative update 10 or later versions), you can skip the following steps and follow the steps under the “Alternative method” section instead.
- Convert the shared mailbox to a regular mailbox by using the Exchange admin center in Exchange Online. To do this, follow these steps:
- Open the Exchange admin center in Exchange Online.
- Click recipients, and then click shared.
- Select the shared mailbox, and then click Convert.
- On the Warning page, select Yes to convert the shared mailbox.
- Create an on-premises object for the cloud mailbox by using the New-RemoteMailbox cmdlet in the Exchange Management Shell.
Note
This object must have the same name, alias, and user principal name (UPN) as the cloud mailbox.
For more information, see New-RemoteMailbox.
- Set the ExchangeGuid property on the new on-premises object that you created in step 2 to match the cloud mailbox. To do this, follow these steps:
- Connect to Exchange Online by using a remote session of Windows PowerShell.
For more information about how to do this, see Connect to Exchange Online using remote PowerShell.
- Use the Get-Mailbox cmdlet to retrieve the value of the ExchangeGuid property of the cloud mailbox. For example, run the following command:
<span class="hljs-pscommand">Get-Mailbox</span> <MailboxName> | FL ExchangeGuid
For more information, see Get-Mailbox
- Open the Exchange Management Shell on the on-premises Exchange server.
- Use the Set-RemoteMailbox cmdlet to set the value of the ExchangeGuid property on the on-premises object to the value that you retrieved in step 3b. For example, run the following command:
<span class="hljs-pscommand">Set-RemoteMailbox</span> <MailboxName><span class="hljs-parameter"> -ExchangeGuid</span> <GUID>
For more information, see Set-RemoteMailbox.
- Wait for directory synchronization to occur. Or, force directory synchronization.
For more information, see Synchronize your directories.
- Make sure that the Office 365 user object is displayed as “Synced with Active Directory.”
- Move the mailbox from Exchange Online to the on-premises environment.
For more information, see Move mailboxes between on-premises and Exchange Online organizations in 2013 hybrid deployments.
- Convert the mailbox to a shared mailbox by using the Set-Mailbox cmdlet in the Exchange Management Shell. For example, run the following command:
<span class="hljs-pscommand">Set-Mailbox</span> <MailboxName><span class="hljs-parameter"> -Type</span> Shared
For more information, see Set-Mailbox.
- Move the mailbox from the on-premises environment to Exchange Online.
For more information, see Move mailboxes between on-premises and Exchange Online organizations in 2013 hybrid deployments.
Alternative method
For on-premises environments that use Exchange Server 2013 (cumulative update 21 or later versions) or Exchange Server 2016 (cumulative update 10 or later versions):
Create an on-premises object for the cloud mailbox by using the New-RemoteMailbox cmdlet in the Exchange Management Shell.
Note
This object must have the same name, alias, and user principal name (UPN) as the cloud mailbox. For more information, see New-RemoteMailbox.
For example, run the following command:
<span class="hljs-pscommand">New-Remotemailbox</span> sharedmailbox@contoso.com<span class="hljs-parameter"> -Remoteroutingaddress</span> sharedmailbox@contoso.mail.onmicrosoft.com<span class="hljs-parameter"> -Share</span>
You can find your info about your Exchange build here:
https://docs.microsoft.com/en-us/exchange/new-features/build-numbers-and-release-dates?view=exchserver-2019