Tierney - stock.adobe.com
Tipps für das Microsoft-365-Management mit PowerShell
Wieso sollten Admins PowerShell für Office-365 und Azure verwenden? In einigen Fällen sind sie der einzige Zugang zu verborgenen Einstellungen für Microsoft-Cloud-Produkte.
Microsoft verbessert ständig die Möglichkeiten zur Verwaltung von Microsoft 365 und Azure.
Das Mittel der Wahl ist dabei in der Regel PowerShell. Das Automatisierungs-Tool eröffnet viele leistungsstarke Skripting-Möglichkeiten für Administratoren, die ihre Verwaltungsfunktionen skalieren müssen. Das Admin Center in Microsoft 365, ehemals Office 365 kann grundlegende Aufgaben erledigen, aber PowerShell ist oft die einzige Möglichkeit, auf Einstellungen zuzugreifen, die in der graphischen Benutzeroberfläche (Graphic User Interface, GUI) verborgen sind.
PowerShell öffnet auch die Tür zu Microsoft-365-Automatisierungsskripten, mit denen sich Verwaltungsaufgaben für Hunderte oder Tausende von Benutzern einfacher und schneller durchführen lassen.
Da viele verschiedene Teams für die einzelnen Funktionen von Office 365 verantwortlich sind, wurde im Laufe der Zeit eine Vielzahl verschiedener PowerShell-Module eingeführt. Es gibt Konsolidierungsbemühungen, um die Verwaltung mit diesem Automatisierungs-Tool zu vereinfachen und zu erleichtern, aber die Möglichkeiten für die Verwaltung von Office 365 PowerShell sind immer noch umfangreich.
Verwalten von Office 365 über Azure-Module
Als Grundlage von Microsoft 365 dient die Infrastruktur und Plattform von Microsoft Azure. Das Azure-AD-Modul (Azure Active Directory) enthält einen Großteil der Funktionen, die für die Verwaltung der Azure-Active-Directory-Seite von Microsoft 365 nötig sind. Dieses Modul basiert auf der öffentlichen Graph-API, die Microsoft zur Unterstützung der IT bei der Arbeit mit Azure-Ressourcen bereitstellt. Einige der in diesem Modul enthaltenen Funktionen umfassen die Verwaltung von Anwendungen, Geräten, Gruppen, Rollen und Benutzern.
Die Installation des Azure AD-Moduls ist einfach und kann mit von PowerShellGet aus der PowerShell Galery durchgeführt werden. Obwohl Sie dieses Modul in PowerShell 7 (oder Core) unter Windows mit dem Switch -UseWindowsModule von Import-Module verwenden können, gibt es Funktionen, die aufgrund der Serialisierung der Befehlsausgabe möglicherweise nicht wie erwartet funktionieren.
Install-Module -Name 'AzureAD'
Was ist mit dem MSOnline-Modul?
Vor dem Azure-AD-Modul bot Microsoft das MSOnline-Modul für PowerShell-Benutzer an. Diese Version war das erste Modul, das für die Verwaltung aller Aspekte von Azure gedacht war. MSOnline basiert auf einer nicht-öffentlichen API und verfügt über Funktionen, die noch nicht auf das Azure-AD-Modul portiert wurden.
Eine Funktion dieses älteren Moduls, die derzeit nicht im Azure AD-Modul vorhanden ist, ist beispielsweise die Verzeichnissynchronisierung, mit der sich On-Premises-Domänenobjekte mit Azure Active Directory synchronisieren lassen.
Microsoft fügt dem MSOnline-Modul keine neuen Funktionen hinzu; Sie können es jedoch Seite an Seite mit dem Azure-AD-Modul installieren. Ähnlich wie beim Azure-AD-Modul ist es wichtig zu beachten, dass Sie dieses Modul zwar in PowerShell 7 (oder Core) unter Windows mit dem Switch -UseWindowsModule des Befehls Import-Module verwenden können, es jedoch Funktionen gibt, die aufgrund der Serialisierung der Befehlsausgabe in MSOnline möglicherweise nicht wie erwartet funktionieren.
Install-Module -Name 'MSOnline'
Verwenden der neueren Azure PowerShell-Module
Aber wohin gehört nun das neue Azure-PowerShell-Modul – in der Microsoft-Dokumentation manchmal auch als Az-PowerShell-Modul bezeichnet – in der PowerShell-Verwaltungslandschaft? Das Modul ersetzt das AzureRM-Modul, das für die Verwaltung aller Aspekte von Azure erstellt wurde.
Obwohl es sich noch in der Entwicklung befindet, bekommt das Az-PowerShell-Modul bereits laufend Befehle von Microsoft-Entwicklern hinzugefügt. Die Befehle selbst sind zu zahlreich, um sie für diesen Artikel aufzulisten, aber sie umfassen viele verschiedene Aspekte von Azure, von Containern bis zum Kostenmanagement.
Das Az-Modul ist plattformübergreifend kompatibel und funktioniert mit den neuesten PowerShell-Versionen. Die empfohlene Installationsmethode ist über den CurrentUser. Verwenden Sie zum Installieren über die PowerShell Galery den folgenden Befehl:
Install-Module -Name 'Az' -AllowClobber -Scope 'CurrentUser'
Verschiedene Möglichkeiten, SharePoint mit PowerShell zu verwalten
Die PowerShell kann auch eng mit SharePoint zusammenarbeiten. Es gibt zwei Hauptmodule für die Verwaltung von SharePoint in der Azure-Umgebung. Für die meisten typischen Verwaltungsaufgaben und die Verwaltung einzelner Webseiten können Sie die SharePoint Online Management Shell verwenden, die Sie über die PowerShell-Galery installieren:
Install-Module -Name 'Microsoft.Online.SharePoint.PowerShell'
Es gibt ein sekundäres Modul namens SharePoint Patterns and Practices (PnP) für komplizierte Bereitstellungs- und Artefaktverwaltungsaufgaben mit SharePoint. Ähnlich wie bei der Online Management Shell können Sie SharePoint PnP über die PowerShell Galery installieren:
Install-Module -Name 'SharePointPnPPowerShellOnline'
PowerShell-Verwaltung für Microsoft Teams
Die Verwaltung von Microsoft Teams ist mit der Verfügbarkeit des Microsoft-Teams-Moduls weniger kompliziert geworden. Das Modul dient hauptsächlich dazu, Graph-API-Aufrufe in ein einfacher zu verwendendes Befehls-Framework zu verpacken. Mit diesem Modul können Sie schnell neue und vorhandene Teams erstellen und verwalten.
Install-Module -Name 'MicrosoftTeams'
Es gibt bekannte Probleme mit PowerShell 7 und dem Microsoft-Teams-Modul. Der empfohlene Client ist Windows PowerShell 5.1. Für Open-Source-PowerShell-Versionen können Sie in vielen Fällen den Switch -UseWindowsPowerShell im Import-Modul verwenden. Es gibt jedoch einige Ausnahmen.
Verwalten von Exchange Online über PowerShell
Schließlich ist eine weitere Kernaufgabe von Microsoft 365 die Bereitstellung von E-Mails über die Exchange-Online-Infrastruktur. Diese Umgebung einfach zu verwalten, ist für viele Geschäftsabläufe entscheidend. Das derzeit empfohlene Modul ist das Exchange-Online-Management-v2-Modul, auch bekannt als EXOv2. Installieren Sie dieses Modul in einer erweiterten PowerShell-Eingabeaufforderung mit folgendem Befehl:
Install-Module -Name 'ExchangeOnlineManagement'
Wenn Sie dieses Modul zum ersten Mal importieren, finden Sie nur eine Handvoll eindeutiger Befehle. Microsoft hat diese für den Massenabruf von Daten optimiert, damit die traditionellen Befehle für das Management von Exchange Online effizienter ablaufen können.
Um alle Aspekte von Exchange Online zu verwalten, müssen Sie sich lediglich mit Exchange verbinden, und die anderen Befehle werden zusammen mit den neuen EXOv2-Befehlen verfügbar.
Connect-ExchangeOnline -UserPrincipalName '[email protected]' -ShowProgress $true
Die Verwaltung des umfangreichen Office 365-Ökosystems erfordert viele Tools
Wie Sie sehen können, gibt es viele Möglichkeiten, die PowerShell mit Microsoft 365 und Azure zu verbinden. Zu den in diesem Artikel vorgestellten Methoden kommen außerdem noch eine ganze Reihe von unabhängig entwickelten Modulen mit umfangreichen Funktionen. Eine schnelle und effiziente Azure- und Microsoft-365-PowerShell-Verwaltung hilft Administratoren, flexibler auf sich ändernde Anforderungen des Unternehmens zu reagieren.