SharePoint Online und Teams mit PowerShell verwalten – eine Einführung
Um SharePoint Online oder Teams zu verwalten oder zu konfigurieren nutzt man normalerweise das Microsoft 365 Admin Center. Sobald es jedoch um komplexere oder sich wiederholende Aufgaben geht, ist die PowerShell das ideale Werkzeug. Die in Windows integrierte Kommandozeile ermöglicht die Steuerung vieler Produkte wie Azure, Teams oder Exchange Online mit entsprechenden PowerShell-Erweiterungsmodulen. Wie Sie die SharePoint Online PowerShell starten und mit den ersten Befehlen loslegen erklärt die folgende Anleitung.
Vorbemerkung: SharePoint oder Teams mit PowerShell?
Um mit der PowerShell zu starten, müssen vorab einige Initialisierungsschritte vorgenommen werden. Dieser Beitrag erklärt das am Beispiel SharePoint Online. Die davon leicht abweichenden Schritte für Teams finden Sie in diesem Beitrag: Grundlagen Teams-Verwaltung mit PowerShell
1. Zuerst das PowerShell-Modul installieren
Um die Windows-PowerShell einsetzen zu können, müssen Sie zunächst eine Verbindung mit SharePoint Online herstellen. Dafür ist zunächst die Installation des SharePoint Online PowerShell-Moduls erforderlich, die Sie in folgenden Schritten bewerkstelligen:
1. Klicken Sie zum Start der PowerShell mit der rechten Maustaste auf den Startknopf, und wählen Sie hier Windows PowerShell (Administrator) aus. Wichtig ist, dass Sie die PowerShell auf diese Art mit administrativen Rechten ausführen, da die Installation sonst fehlschlägt.
2. In der Konsole geben Sie als ersten Befehl folgendes CMDlet ein:
Install-Module -Name Microsoft.Online.SharePoint.Powershell
3. Achtung: Oft taucht schon zu Beginn eine Fehlermeldung auf, mit dem Hinweis „Could not Autoload Matching Modules“. Der Grund dafür liegt in einer Beschränkung der Ausführungsrichtlinie.
Das lässt sich einfach beheben mit folgendem Befehl, auf den Sie mit „A“ Anworten:
Set-ExecutionPolicy Unrestricted
4. Nun also nochmal den Befehl aus Punkt 2 eingeben. Die darauf folgende Installationsabfrage der PowerShell ist mit ja zu beantworten. Ob das Modul bereits auf dem Rechner oder Server installiert wurde, können Sie zu Beginn ebenfalls prüfen, mit dem CMDlet
Get-Module -Name Microsoft.Online.SharePoint.PowerShell -ListAvailable | Select Name,Version
5. Hier sollte dann folgende Ausgabe in zurückgegeben werden:
2. SharePoint Online PowerShell updaten
Die Version des Moduls kann durchaus abweichend sein je nach Entwicklungsstand. Sofern die Installation des Moduls bereits vor längerer Zeit durchgeführt wurde, empfiehlt sich ein Update. Dafür nutzen Sie folgendes CMDlet:
Update-Module -Name Microsoft.Online.SharePoint.PowerShell
Zum Zeitpunkt dieses Artikels entsprach die abgebildete Version der aktuellsten Version. Sofern Sie nach der Installation einen Überblick der im Modul verfügbaren CMDlets erhalten möchten, können Sie das mit folgendem Befehl durchführen:
get-command -Module Microsoft.Online.SharePoint.PowerShell
Die Ausgabe ist in diesem Fall recht umfangreich und wird nach jedem Update des Moduls verändert beziehungsweise erweitert.
An diesem Punkt ist die Installation des SharePoint-Moduls für die PowerShell erledigt, weiter geht es mit dem Verbindungsaufbau zu SharePoint Online.
3. SharePoint Online mit PowerShell verbinden
Wie bei allen anderen Diensten aus Microsoft 365 müssen Sie sich über die PowerShell erst einmal mit Ihrem SharePoint Online verbinden, bevor Sie die ersten CMDlets oder Skripte am Server starten können. Das gelingt mit folgendem Befehl:
Connect-SPOService -URL „Tenant + Adminsite + Sharepoint.com“
In unserem Fall muss es wie im Screenshot also lauten:
Connect-SPOService -URL https://rolandeich-admin.sharepoint.com
Die Anmeldung kann sowohl mit als auch ohne Multifaktor-Authentifizierung (MFA) erfolgen.
4. Typische PowerShell Fehlermeldungen
– Fehlermeldung „Connect-SPOService : Current site is not a tenant administration site“ ?
Falls Sie bei der Anmeldung die Fehlermeldung „Connect-SPOService : Current site is not a tenant administration site“ erhalten, haben Sie wahrscheinlich „-admin“-Suffix wie in der obigen Zeile vergessen.
– Fehlermeldung “Module could not be loaded“
Falls Sie die Fehlermeldung “Module could not be loaded“ erhalten, liegt das vermutlich an einer beschränkten PowerShell-Ausführungsrichtlinie. Der folgende Befehl zeigt das an:
Get-ExecutionPolicy
Falls Sie hier AllSigned zurückbekommen, blockiert Ihre Richtlinie unsignierte Module. Beheben können sie diese Sperre mit dem Befehl, der die Richtlinie für Ihren Benutzerkontext aufhebt:
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
5. SharePoint Online PowerShell Befehle zum Einstieg
Nachdem Sie die Verbindung zu SharePoint Online hergestellt haben, können Sie mit ersten Verwaltungsschritten beginnen. Hier als Beispiel einige nützliche PowerShell-Befehle:
Get-SPOTenant listet alle Einstellungen für diesen Mandanten auf, incl. Kontingentstatus und Freigabefunktionen.
Mit NEW-SPOSite können Sie eine neue Websitesammlung anlegen. Genauso können Sie Get-SPOSite nutzen, um bestehende Seiten aufzulisten:
Die Syntax zum Anlegen einer neuen Seite lautet wie folgt:
New-SPOSite -Url "https://IhrSiteName.sharepoint.com/Sites/NeuerSitename" -Owner user@beispiel.de -StorageQuota 100 -Title "Neue Site via PowerShell"
Mit Get-SPOSiteGroup erhalten Sie einen Überblick, welche Gruppen auf einer Seite verfügbar sind.
Mit Add-SPOUser können Sie einen neuen User zu einer Seite hinzufügen. Dieser muss aber gleichzeitig auch Mitglied einer Gruppe werden.
Add-SPOUser https://IhrSiteName.sharepoint.com/sites/ExchangeAllgemein –Loginname max.mustermann@smartsocke-cloud.de -Group "Besitzer von Exchange Allgemein"
Diese Befehlsbeispiele bilden natürlich nur einen Ausschnitt der vielfältigen Möglichkeiten der PowerShell in SharePoint. Zu jedem der hier gezeigtem Befehle gibt es darüber hinaus (je nach Verfügbarkeit) noch die Möglichkeit, ein Get- Set- ADD- NEW oder Remove zu verwenden, je nach Einsatzzweck.
6. Teams administrieren mit der PowerShell
Analog zur Verwaltung von SharePoint Online bietet die PowerShell auch vielfältige Befehle für die Administration von Microsoft Teams. Die Grundlagen dafür haben wir hier beschrieben.
Weitere Tipps zur Teams-Verwaltung mit PowerShell:
• Einführung Teams-Verwaltung mit PowerShell: Teams anzeigen, Benutzer anlegen, Teams löschen
• Gegen Teams-Wildwuchs: Mit PowerShell-Skript erstellungsberechtigte Nutzer festlegen
• Gastbenutzer und private Teams-Kanäle mit PowerShell aufspüren und als CSV exportieren
• Alle Teams anzeigen, in denen ein User Mitglied ist – via Admin Center oder PowerShell
• Microsoft Teams Richtlinien verwalten mit Admin-Center oder PowerShell