Tags: SharePoint, PowerShell, Microsoft 365
Administratoren können SharePoint Online zwar größtenteils über die Web-Konsole im Microsoft 365 Admin Center verwalten, aber es kommt öfters vor, dass bestimmte Aufgaben automatisiert werden sollen. Dafür sieht Microsoft auch hier PowerShell vor, für das wie bei Teams oder Exchange ein eigenes Modul existiert.
Nachdem das PowerShell-Modul für SharePoint Online nicht zum Lieferumfang des Betriebssystems gehört, muss man dieses im ersten Schritt installieren. Dies erreicht man mit folgendem Aufruf:
Install-Module -Name Microsoft.Online.SharePoint.Powershell
Zu beachten ist hier, dass man für das Hinzufügen von Modulen eine PowerShell-Sitzung mit administrativen Rechten benötigt. Die erfolgreiche Installation des Moduls kann man mit
Get-Module -Name Microsoft.Online.SharePoint.PowerShell -ListAvailable |
Select Name,Version
prüfen.
Wenn die Installation des Moduls bereits länger zurückliegt, dann ist ein Update angeraten. Dies lässt sich folgendermaßen erledigen:
Update-Module -Name Microsoft.Online.SharePoint.PowerShell
Um einen Überblick über die im Modul verfügbaren Cmdlets zu erhalten, gibt man folgenden Befehl ein:
Get-Command -Module Microsoft.Online.SharePoint.PowerShell
Die Ausgabe hier ist entsprechend umfangreich, in der aktuellen Version finden sich 227 Cmdlets.
Mit SharePoint Online verbinden
Wie bei den anderen Diensten aus Microsoft 365, muss man sich auch hier erst einmal mit SharePoint Online verbinden, bevor man die ersten Cmdlets oder Scripts starten kann. Dazu gibt man folgenden Befehl ein:
Connect-SPOService -URL <Tenant + Adminsite + Sharepoint.com>
Anschließend öffnet sich der bekannte Anmeldedialog für das Microsoft-Konto.
Die Anmeldung ist sowohl mit als auch ohne Multi-Faktor-Authentifizierung (MFA) möglich.
Befehle für den Einstieg
Nachdem eine Verbindung zu SharePoint Online existiert, kann man mit der Verwaltung beginnen. Im Folgenden stelle ich einige nützliche Befehle für typische Aufgaben bei der SharePoint-Verwaltung vor.
Get-SPOTenant listet alle Einstellungen für einen Mandanten auf, darunter den Kontingentstatus und Freigabefunktionen.
Get-SPOSite listet alle bestehenden Sites auf.
Mit New-SPOSite legt man eine neue Website-Sammlung an. Ein Aufruf könnte folgendermaßen aussehen:
New-SPOSite -Url https://yourtenant.sharepoint.com/Sites/newsitename -Owner you@yourtenant.com -StorageQuota 100 -Titel "Neue Site"
Mit Get-SPOSiteGroup kann man einsehen, welche Gruppen auf einer Site verfügbar sind.
Mit Add-SPOUser fügt man einen User zu einer Site hinzu, dieser muss dann aber auch gleichzeitig Mitglied einer Gruppe werden. Ein entsprechender Aufruf würde so aussehen:
Add-SPOUser https://rolandeich.sharepoint.com/sites/ExchangeAllgemein -Loginname max.mustermann@smartsocke-cloud.de -Group "Besitzer von Exchange Allgemein"
Wie erwähnt, bietet das SharePoint-Modul derzeit über 200 Cmdlets. Für die meisten Aspekte gibt es die Varianten mit den Verben Get, Set, Add bzw. New und Remove, um bestimmte Ressourcen anzuzeigen, zu ändern, hinzuzufügen oder zu entfernen.
Täglich Know-how für IT-Pros mit unserem Newsletter
Roland Eich ist gelernter Fachinformatiker für Systemintegration und in der IT seit über 14 Jahren zu Hause. Roland deckt aufgrund seiner Erfahrungen ein breites Spektrum der Microsoft-Produktpalette ab.
Zudem besitzt er verschiedene Zertifizierungen (MCITP, MCSA und MCSE, ITIL, PRINCE2).
// Kontakt: E-Mail //
Ähnliche Beiträge
- Postfächer aus Microsoft 365 in eine PST-Datei exportieren mit PowerShell
- Microsoft Graph: Einheitliches (PowerShell)-API für Microsofts Cloud-Dienste
- Zeit zwischen Kalendern von Outlook und Microsoft Teams stimmt nicht überein
- PowerShell-Modul für Exchange Online (EXO v2) unterstützt nun macOS und Linux
- Lizenzen für Microsoft 365 mittels PowerShell zuweisen
Weitere Links
1 Kommentar
Neben dieser Powershell Erweiterung gibt es noch die PnP.Powershell, die die obige Powershell Erweiterung irgendwann komplett ablösen soll. Um beide Versionen zu nutzen, wäre es hilfreich zu wissen wie man beide Versionen korrekt installiert, z.B. Microsoft.Online.SharePoint.PowerShell mit Powershell 5.1 und PnP.Powershell mit Powershell 7.x