Microsoft Teams and Exchange 2016

Microsoft Teams works best when your mailbox is in Exchange Online, and you have a license for SharePoint Online, and you have OneDrive for Business enabled.

When you have your mailbox in Exchange on-premises your options are limited, you have basic Teams functionality like audio/video and files, but that’s basically it. Not a trace of the calendar or the option to manage meetings in Teams. This is what ‘cloud partners’ have been telling me for a long time: “no, you must migrate your mailbox to Exchange Online” (and we can help you with that I was they were thinking…)

Teams with Exchange on-premises

But, if you have Exchange 2016 CU3 or higher things get better (I’m sorry if you are still running Exchange 2010). To enable the integration of Teams with on-premises Exchange 2016 you need to configure OAuth in your on-premises environment as outlined in my previous blog, and assuming you have Exchange hybrid configured of course.

When you have OAuth configured, Teams can access the on-premises mailbox on behalf of the user that’s logged on in Teams, making it possible to retrieve the user’s calendar. After configuring OAuth and without any additional configuration in Teams the user’s on-premises calendar (here in Exchange 2019) automagically appears:

Teams with Exchange on-premises OAuth

In the Teams client this is a view of your calendar, and using the new meeting option you can create new Teams meetings, invite people, set recurrence, select a channel etc. Invites are sent to other recipients using the regular Exchange process, and when accepted a response is sent (or not) back to your inbox. I never knew this was possible, but this is cool stuff.

Teams with Exchange on-premises new meeting

Integrating the calendar into Teams is a nice addition and it can help users with their daily productivity task. From a compliance perspective things are a bit different. Chats for example are not stored in the user’s mailbox, this is only possible for mailboxes in Exchange Online. The process responsible for copying Teams chat data from the Azure storage (outside of Office 365) simply cannot access the folder in the user’s mailbox.

But, for on-premises calendar integration in your Teams environment this is very nice.

More information

How Exchange and Microsoft Teams interact –

Configure OAuth authentication between Exchange and Exchange Online organizations –


14 thoughts on “Microsoft Teams and Exchange 2016”

  1. Hi jaap, thanks for the sharing the knowledge.
    In our org we have exchange2013 we need to integrate with office365. If we introduce exchange 2016cas server into environment and configure whether it will work or we need to migrate all mailboxes to exchange2016??


    1. Hi,
      I am not sure yet. OAuth is only about authentication so it might work since the authentication succeeds. But the documentation is unclear, and I don’t have an environment to test it. I see the same question for Exchange 2010, but we don’t know yet. Hopefully we will find out soon.


      1. Just tested it with mailbox on EX2016 and EX2010. CAS namespace is switched to EX2016 and environment is hybrid (EX2016) also OAUTH is configured. MBX on EX2016 Calendar app is visible MBX on EX2010 no Calendar app is visible.


  2. If we enable hma what is the end user impact if there are using legacy outlook clients like outlook 2010 and other mail apps and legacy protocols imap and pop3


  3. Hello, thank you for your time to post this. I’m working in test system (O365 – E2016U3) where all my users have on-premise mailboxes and I have successfully set the hybrid environment, I’m planning to follow this guide to set up OAUTH to test Teams integration, however I have one dumb question, do I need to activate the Exchange Online license for the users?


  4. Hi Jaap,

    So I have 2 forests each with their own Exchange environment. There is 1 AADConnect syncing both environments to a single tenant. We wanted the Calendar in Teams, I setup a Hybrid 2016 server latest U in the first exchange environment, the CAS/Mailbox is also 2016. The Hybrid wizard completed but failed on enabling modern oauth. So I set this up manually. The calendar appeared and all is fine. So I did the exact same for the second environment. It also failed on modern oauth, I set this up manually and the calendars appeared. However when the users in this second environment create or open a meeting invite the “Join Meeting” button is missing, I have checked as much as I can but stumped what to do next, all the settings and setup seem the exact same as the first environment.

    Thanks again


    1. Hi,
      I’m surprised it is working (somewhat) with two forests. But when the ‘join meeting’ button is missing you are already in Teams and have access to the mailbox, so I assume this is not an authentication issues (but that’s a wild guess).


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s