Hx-Protokoll

Schon auf der Ignite 2016 gab es erste Informationen zum HX-Protokoll, welches durch Windows Mobile 10 genutzt werden sollte. Mehr Details gab dann Ross Smith IV auf der Ignite 2018 hat. Nun ist es ja nicht so, dass wird mit ActiveSync, EWS, MAPI/HTTP und REST nicht genug Protokolle für den Zugriff auf Exchange Daten haben. Wozu dann noch ein weiteres Protokoll? Ende 2020 haben wir ja schon fünf Protokolle (EAS, EWS, REST, MAPI/HTTP, Graph), wenn wir OWA, RPC/HTTP, RPC/TCP, POP3, IMAP4 außen vor lassen. Ein weiteres Protokoll macht nur Sinn, wenn andere zurück gebaut werden.

Das HX-Protokoll wird aktuell von Outlook/IOS und Outlook/Android genutzt. Die Einführung erfolgte quasi "unbemerkt" von Administratoren und Anwendern, da Microsoft die neue API bereitgestellt hat und über ein Update der Clients (ab "Outlook for iOS 3.10.1", "Outlook for Android 3.0.14" und neuer) der Wechsel vollzogen wurde. Der "Vorläufer" ActiveSync ist weiter aktiv, damit die nativen Apps der mobilen Clients weiterhin Mails, Termine und Kontakte abgleichen können.

Erste Beschreibung

Die Folie aus dem Jahr 2018 von Ross zeigt einige Details:


Quelle: BRK3145 Deploying Outlook mobile securely in the enterprise https://youtu.be/dt5GomXuqhI?t=325 

Aus dem Bild lese ich mehrere Informationen aus:

  • Cloud Only
    Anscheinend ist die Verfügbarkeit des neuen Protokolls auf "Exchange Online" beschränkt. Es wird wohl keine native Unterstützung direkt im Exchange On-Premises-Server geben. Das könnte ein hinweis sein, dass die bisherigen Protokolle für die Cloud z.B. aus Performance- oder Sicherheitsgründen nicht optimal sind und Hx besser skaliert
  • On-Premises über die Cloud
    Auf der Seite Cloud als Frontend Proxy? habe ich schon in Sommer 2018 unabhängig von Microsoft vermutet, dass die Cloud als Frontend für eine On-Premises-Umgebung genutzt werden können. Mit Graph und Exchange On-Premises ist das schon länger der Fall. Ein Client kann über das HX-Protokoll über die Cloud als Proxy und ActiveSync zum Backend auch OnPremise Postfächer nutzen.
  • Analogie zum Outlook/IOS und Outlook/Android
    Mit dem Zukauf der Firma Acompli (Outlook für IOS und Outlook für Android) hat Microsoft schon eine ähnliche Konstellation bekommen, die von Amazon AWS mittlerweile zu Azure umgezogen wurde. Diese beiden Produkte nutzen nicht ActiveSync sondern eine Middleware in der Cloud, was im Prinzip dem HX-Protokollansatz entspricht.
    Ich gehe davon aus, dass der Wechsel der mobilen Clients für IOS/Android auf das HX-Protokoll erforderlich ist, um die "alten" Proxy-Server auf Basis des Acompli-Protokolls abzubauen.

Natürlich haben die Diskussionen nach der Veröffentlich zugenommen und so gibt es einige Aussagen von Microsoft-Mitarbeitern in Foren

.. Outlook desktop will continue to use the MAPI/HTTP protocol...
... We haven't announced the transition date for Outlook for Mac. Stay tuned...
Quelle: Kommentar von Ross  https://techcommunity.microsoft.com/t5/exchange/outlook-lt-gt-exchange-protocols/m-p/266365

Auch in der Dokumentation hat sich mittlerweile das HX-Protokoll niedergeschlagen

"Protocol consolidation: Today, each Outlook client platform utilizes a different data sync protocol, which hinders the ability to innovate and deploy new features quickly across all Outlook clients. The native Microsoft sync technology that Outlook for iOS and Android is adopting has been in use by the native Windows 10 mail client for a number of years, and in the future, will be used by Outlook for Mac."
Quelle: https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/outlook-for-ios-and-android/outlook-for-ios-and-android

Auch im FAQ-Bereich werden einige Fragen beantwortet

Migration

Auf der Ignite 2018 gab es im Vortrag "BRK 2177: Outlook mobile for the enterprise" eine weitere Information:

Hier wird dann deutlich, dass das Hx-Protokoll tatsächlich das Acompli-Protokol "OMS" ablöst, welches Microsoft 2015 durch den Zukauf der Firma Acompli erhalten und bsi 2017 von Amazon AWS auf Azure migriert hat. Da der Support für das HX-Protokoll nun native in den Office 365 Frontend-Servern umgesetzt wird, kann dann auch der Umweg über die Azure-Ressourcen entfallen.

BRK 2177: Outlook mobile for the enterprise
https://youtu.be/jEbjTOfezLU?t=1370

Auf dem Bild ist aber auch sichtbar, dass neben "Outlook Mobile" auch die neuen "Universal"-Clients und Outlook/Mac das neue Protokoll nutzen werden.

Discover what's new and what's coming for Microsoft Outlook - Windows 10 Mobile
https://youtu.be/q65W0d4qugg?t=2081
Erste Informationen über Windows 10 Mobile und HX schon im Jahr 2016!

Management

Auch wenn mittlerweile alle Clients auf das HX-Protokoll umgestellt sein sollten, können Sie als Exchange Administrator den Status recht einfach per PowerShell ermitteln

Get-MobileDevice `
   | where {$_.DeviceModel -eq "Outlook for iOS and Android"} `
   | ft DeviceID,DeviceOS,ClientType,UserDisplayName,

DeviceId                         DeviceOS                        ClientType UserDisplayName
--------                         --------                        ---------- ---------------
9761B93029CDC55F                 Outlook for iOS and Android 1.0 EAS        EURPR04A003.prod.outlook.com/Micros
1539db31335e46d01bde5f8179c81235 iOS 10.3.3                      REST       Intune Test
d5e46d058179c81235e46d0a4a80126f Android 9                       REST       User2
3A8258C75e46d02293125e46d01AE298 iOS 14.3                        Outlook    User1

Die Endgeräte melden sich weiter mit dem Modell "Outlook for iOS and Android" und können damit über Conditional Access und Mobile Device Policies verwaltet und gesteuert werden. Der ClientType liefert aber die Information, ob sie noch das ganz alte "ActiveSync" (EAS) nutzen, das zwischenzeitlich genutzte REST oder eben schon das neue HX-Protokoll (Outlook). Sie werden sicher einige Gerte finden, die noch mit REST und EAS sichtbar sind. Die meisten sind aber alte Partnerschaften, die einfach noch nicht gelöscht wurden. Da lohnt sich dann mal ein Blick in die Statistik mit

Get-MobileDeviceStatistics -mailbox <username> | ft DeviceID,lastSuccessSync,DeviceModel,clienttype,DeviceAccessState

DeviceID                         LastSuccessSync     DeviceModel                 ClientType  DeviceAccessState
--------                         ---------------     -----------                 ----------  -----------------
4KGQP16GIH3JV8C740833ILNT0       02.06.2020 10:18:06 iPhone8C4                   EASS        Blocked
H3TP8OUML8C7408RF6FVA73Q38       18.12.2020 07:49:31 iPhone12C1                  EAS         Quarantined
3A88941AE294822<931941AE22F76098 18.12.2020 05:34:30 Outlook for iOS and Android Outlook     Allowed

Das erste Gerät ist hier ein altes Smartphone und das zweite Gerät eine IOS-ActiveSync in der Qaurantäne.

Weitere Links