Hallo Community,
folgendes Szenario:
Wir haben einen onPrem EXC Server 2016 und Exchange Online.
Über den Hybrid Configuration Wizard erfolgreich verbunden. (Klassisch - Voll)
Postfächer haben wir lokal liegen lassen. Benutzer werden zu Azure gesynct und sind mit Teams lizenziert.
Leider können diese Benutzer über Teams jetzt noch nicht auf ihre Kalender zugreifen.
Wir haben herausgefunden, dass OAuth hier noch Probleme bereitet.
Folgender Befehl in der onPrem Shell
Test-OAuthConnectivity -Service EWS -TargetUri https://outlook.office365.com/ews/exchange.asmx -Mailbox ******@customdomain.de -Verbose | Format-List
bringt folgendes Ergebnis
RunspaceId : 4e7531de-7d25-4e12-99b7-ebc8247af73d
Task : EWS-API-Aufruf unter Oauth wird geprüft
Detail : Die Konfiguration wurde zum letzten Mal erfolgreich geladen um 23.05.2022 09:32:08 UTC. Dies war vor 21479 Minuten.
Der Tokencache wird geleert, weil "zwischengespeichertes Token verwenden" auf "false" festgelegt ist.
Oauth-Protokoll für ausgehende Exchange-Nachrichten:
Clientanforderungs-ID:
Exchange-Antwortdetails:
HTTP-Antwortnachricht:
Ausnahme:
System.Net.WebException: Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden.. ---> System.IO.IOException: Von der
Übertragungsverbindung können keine Daten gelesen werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen. ---> System.Net.Sockets.SocketException: Eine
vorhandene Verbindung wurde vom Remotehost geschlossen
bei System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.Net.Sockets.NetworkStream.Read(Byte[] buffer, Int32 offset, Int32 size)
bei System.Net.FixedSizeReader.ReadPacket(Byte[] buffer, Int32 offset, Int32 count)
bei System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
bei System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
bei System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest, Boolean renegotiation)
bei System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
bei System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bei System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)
bei System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)
bei System.Net.PooledStream.Write(Byte[] buffer, Int32 offset, Int32 size)
bei System.Net.ConnectStream.WriteHeaders(Boolean async)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.Net.HttpWebRequest.GetResponse()
bei 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
Interessanter ist aber hier der Befehl der in der EXC Online Powershell ausgeführt wird
Test-OAuthConnectivity -Service EWS -TargetUri https://remote.customdomain.de/metadata/json/1 -Mailbox ******@customdomain.de -Verbose | Format-List
Welcher uns immer folgendes Ergebnis liefert
...
...
Exchange-Antwortdetails:
HTTP-Antwortnachricht:
Ausnahme:
System.Net.WebException: The remote server returned an error: (401) Unauthorized.
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), diagnostics: 2000005;reason="The user specified by the user-context in the token does not
exist.";error\_category="invalid\_user"
ResultType : Error
Identity : Microsoft.Exchange.Security.OAuth.ValidationResultNodeId
IsValid : True
ObjectState : New
Der Microsoft Remote Connectivity Analyzer bringt uns beim "Teams-Kalenderzugriff" Test folgendes Ergebnis:

Leider wissen wir hier nicht mehr weiter.
Danke schon mal für die Tipps!