Exchange Online Management Shell - Abkündigung Remote PowerShell (RPS)

- 25.08.2023
von Thomas Windscheif / Microlinc



Exchange Online
Exchange Online PowerShell
Exchange Online Management Shell V2 Abkündigung
Exchange Online Management 2.0.5
Remote PowerShell Session abgekündigt
RPS abgekündigt

Microsoft hat nun angefangen bei bestehenden Tenants die Remote PowerShell Session-Schnittstelle unter Exchange Online zu deaktivieren. Microsoft fordert schon länger die Umstellung auf REST basierte Abfragen. Gerade bei Kunden mit komplexen Onboarding-Scripten gibt es mit der Abschaltung nun aber Probleme.
Wer aktuell noch eine Exchange Online Management Shell V2 nutzt (2.0.5), bekommt z. B. folgenden Fehler nach dem Anmeldedialog angezeigt:
New-ExoPSSession : Beim Verbinden mit dem Remoteserver "outlook.office365.com" ist folgender Fehler aufgetreten:
PSRemoteTransportException





Die gute Nachricht 😊: Wir können uns nochmal kurz Zeit verschaffen bis Ende September, indem man die Deaktivierung über eine Diagnostic-Seite im M365-Hilfsportal auslöst.
Der Link hierzu ist: https://aka.ms/PillarEXORPS

Der Artikel von Microsoft mit der Beschreibung und dem zeitlichen Ablauf der Deaktivierung der Remote PowerShell API ist hier beim Microsoft Exchange Produkt-Team-Blog veröffentlicht:
https://techcommunity.microsoft.com/t5/exchange-team-blog/deprecation-of-remote-powershell-in-exchange-online-re-enabling/ba-p/3779692

Allerdings besteht jetzt Handlungsbedarf. Je nach Szenario reicht die Aktualisierung des Exchange Online Management Shell-Moduls.
Hierzu empfehle ich die Deinstallation in einer privilegierten PowerShell-Sitzung:
Get-Module -ListAvailable ExchangeOnlineManagement | Uninstall-Module

Und eine Neuinstallation via:
Install-Module ExchangeOnlineManagement




Im Normallfall lädt sich das System die aktuell verfügbarste Version aus der PSGallery herunter.
Die Versionsprüfung der installierten Version mittels des folgenden Befehls erfolgen:
Get-Module -ListAvailable ExchangeOnlineManagement




Bei hybriden Umgebungen welche oft komplexere Skripte nutzen bei denen das Active Directory-Object via PowerShell angelegt wurde, das lokale Exchange-Object Remote-Mailbox aktiviert wird und anschließend unter Exchange Online verschiedene Änderungen an der Mailbox via PowerShell vorgenommen wurden, reicht das leider oftmals nicht.
Oft wurde hier Invoke-Command genutzt und die Befehle an Exchange Online über eine separate parallel geöffnete Powershell übergeben, da man sonst Überlappungen mit den lokalen Exchange OnPremise Cmdlets verursachen würde.
Weil nun keine Remote PowerShell-Session mehr existiert in die man die Befehle absetzen könnte, muss man nun eine alternative nutzen. Microsofts’Empfehlung: Prefix.
Nutzt man diese Möglichkeit, wird aus dem Befehl Get-Mailbox z. B. Get-EXOV3Mailbox. Dies bedingt natürlich, dass alle Scripte gesichtet und korrigiert werden müssen.




Der Artikel von Microsoft zum Ersatz für Invoke-Commands ist hier zu finden:
https://learn.microsoft.com/en-us/powershell/exchange/invoke-command-workarounds-rest-api?view=exchange-ps/a>
MICROL!NC - URL zum Artikel: http://microlinc.homeip.net/index.php?lev1=25&lev2=38&id=462 - Ausdruck vom 08.05.2024