Hi everybody,
we are trying to get the Teams Calendar Icon back while still using our on prem 2016 Exchange.
We had this working for over a year and about a month ago it stopped working.
We are Using Exchange 2016 Cu22 and O365 with Microsoft 365 Business Basic Licenses.
While it was working we only hat Azure AD Synch in place but it seems Exchange Hybrid Configuration is needed now.
So we setup Hybrid with the latest Hybrid Configuration Wizard
(https://learn.microsoft.com/en-us/exchange/hybrid-deployment/deploy-hybrid)
This worked well and without any issues, however, the calendar icon is still missing.
Digging around we found the following:
- The Test at https://testconnectivity.microsoft.com/tests/TeamsCalendarMissing/input failed with "User mailbox is marked as undiscoverable by Teams middle-tier service." and Teams Logs show "isMailboxDiscoverable: false"
- Autodiscoverv2 is working fine
- Oauth test from On-Prem to Cloud is coming back with "Success" (local Exchange Shell: Test-OAuthConnectivity -Service EWS -TargetUri https://outlook.office365.com/ews/exchange.asmx -Mailbox <On-Premises Mailbox> -Verbose | Format-List)
- Oauth test from Cloud to On-Prem failes with "Error:[OAuthCredentials:Authenticate] the authorization header was 'Bearer', but no challenge returned from 'https://something.domain.de/ews/Exchange.asmx'. That url may not support OAuth" (Online Exchange Shell: Test-OAuthConnectivity -Service EWS -TargetUri <external hostname authority of your Exchange On-Premises deployment>/metadata/json/1 -Mailbox <Exchange Online Mailbox> -Verbose | Format-List)
We already had an call open with O365 Support, but cause of the Oauth Issue they told us that it is an Exchange Issue and the cant help us with that.
The support suggested to reassign the O365 Licenses, but this doesn't fixed the issue.
We also tried to verify the steps on https://learn.microsoft.com/en-us/exchange/configure-oauth-authentication-between-exchange-and-exchange-online-organizations-exchange-2013-help but cannot find any issue here. The EvoSTS Server is created and the Organization connector is also in place.
We still not sure if the Oauth Error is the cause or if there is any other issue but below you will find the complete error. The only thing we noticed here is that it received a Basic realm as challenge which seems not correct if we check other reply's on several posts.
Test-OAuthConnectivity -Service EWS -TargetUri https://something.domain.de/metadata/json/1 -Mailbox online@keyman .de -Verbose | Format-List
RunspaceId : fc5dfa2a-dc26-4bd5-86c3-XXXXXXXXXXXX
Task : Checking EWS API Call Under Oauth
Detail : Die Konfiguration wurde zum letzten Mal erfolgreich geladen um 01.01.0001 00:00:00 UTC. Dies war vor 1062851924 Minuten.
Der Tokencache wird geleert, weil "zwischengespeichertes Token verwenden" auf "false" festgelegt ist.
Oauth-Protokoll für ausgehende Exchange-Nachrichten:
Clientanforderungs-ID: f51375a6-3d3a-44b2-b100-XXXXXXXXXX
Information:[OAuthCredentials:Authenticate] entering
Information:[OAuthCredentials:Authenticate] challenge from 'https://something.domain.de/ews/Exchange.asmx' received: Basic realm="something.domain.de"
Error:[OAuthCredentials:Authenticate] the authorization header was 'Bearer', but no challenge returned from 'https://something.domain.de/ews/Exchange.asmx'. That url may not support OAuth
Exchange-Antwortdetails:
HTTP-Antwortnachricht:
Ausnahme:
System.Net.WebException: The request was aborted: The request was canceled. ---> Microsoft.Exchange.Security.OAuth.OAuthTokenRequestFailedException: The specified url may not support OAuth.
at Microsoft.Exchange.Security.OAuth.OAuthCredentials.Authenticate(String challengeString, WebRequest webRequest, Boolean preAuthenticate)
at System.Net.AuthenticationManager2.Authenticate(String challenge, WebRequest request, ICredentials credentials)
at System.Net.AuthenticationState.AttemptAuthenticate(HttpWebRequest httpWebRequest, ICredentials authInfo)
at System.Net.HttpWebRequest.CheckResubmitForAuth()
at System.Net.HttpWebRequest.CheckResubmit(Exception& e, Boolean& disableUpload)
at System.Net.HttpWebRequest.DoSubmitRequestProcessing(Exception& exception)
at System.Net.HttpWebRequest.ProcessResponse()
at System.Net.HttpWebRequest.SetResponse(CoreResponseData coreResponseData)
--- End of inner exception stack trace ---
at System.Net.HttpWebRequest.GetResponse()
at Microsoft.Exchange.Monitoring.TestOAuthConnectivityHelper.SendExchangeOAuthRequest(ADUser user, String orgDomain, Uri targetUri, String& diagnosticMessage, Boolean appOnly, Boolean useCachedToken,
Boolean reloadConfig)
ResultType : Error
Identity : Microsoft.Exchange.Security.OAuth.ValidationResultNodeId
IsValid : True
ObjectState : New
Thanks for any information or guidance you can provide.
regards