Hallo zusammen,
An der Ignite 2020 wurde angekündigt, dass das EXO V2 PowerShell Module nun auch PowerShell 7 unterstützt.
Exchange Online Admin News at Microsoft Ignite 2020
https://techcommunity.microsoft.com/t5/exchange-team-blog/exchange-online-admin-news-at-microsoft-ignite-2020/ba-p/1687700
PowerShell Core support in the EXO V2 module
https://docs.microsoft.com/en-us/powershell/exchange/exchange-online-powershell-v2?view=exchange-ps#powershell-core-support-in-the-exo-v2-module
Aktuell wird das PreRelease Module 2.0.4 benötigt
Ich starte deshalb eine PowerShell als Admin ohne PS Profile
start PowerShell -nologo -noprofile

Um das neueste PreRelease Modul zu installieren benötigt man folgende Befehle
Get-Module ExchangeOnlineManagement -ListAvailable
Uninstall.-Module ExchangeOnlineManagement
Find-Module -Name ExchangeOnlineManagement -AllowPrerelease
Install-Module -Name ExchangeOnlineManagement -AllowPrerelease
Get-Module ExchangeOnlineManagement -ListAvailable

Nun kann das EXO V2 PowerShell Modul in der PowerShell 7 geladen und benutzt werden
Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline
Get-EXOMailbox -identity <Identity>

Linux
Das ganze funktioniert auch auf Linux
PowerShell 7.x auf Linux starten
pwsh
get-host
Das EXO V2 Modul installieren
Install-Module -Name ExchangeOnlineManagement -AllowPrerelease
Get-Module ExchangeOnlineManagement -ListAvailable

Beim Connect Befehl kommt es dann zu einer Fehlermeldung wegen einem fehlendem WSMan

Eine ganze Abhandlung dazu gibt es hier
Wacky WSMan on Linux
https://www.bloggingforlogging.com/2020/08/21/wacky-wsman-on-linux/
Die Lösung das OMI Shared Object
https://github.com/jborean93/omi
Mit folgendem Befehl wird das PowerShell Home Directory angezeigt
dirname "$( readlink "$( which pwsh )" )"
Nun kann das Shared Object (SO) mit PowerShell ins Home Directory herunterladen
pwsh
$url = "https://github.com/jborean93/omi/releases/download/v1.2.0-pwsh/libmi-centos7.so"
$output = "/opt/microsoft/powershell/7/libmi.so"
Invoke-WebRequest -Uri $url -OutFile $output

Nun kann das PowerShell Modul geladen werden und verbunden werden
Import-Module ExchangeOnlineManagement
Connect-ExchangeOnline -Device

Grüsse
Andres Bohren
