Erstellen von SharePoint Online-Websites und Hinzufügen von Benutzern mit PowerShell

Dieser Artikel gilt sowohl für Microsoft 365 Enterprise als auch für Office 365 Enterprise.

Wenn Sie PowerShell für Microsoft 365 verwenden, um SharePoint Online-Websites zu erstellen und Benutzer hinzuzufügen, können Sie Aufgaben schneller und wiederholt ausführen als im Microsoft 365 Admin Center. Sie können auch Aufgaben ausführen, die im Microsoft 365 Admin Center nicht ausgeführt werden können.

Herstellen einer Verbindung mit SharePoint Online

Für die Verfahren in diesem Thema müssen Sie eine Verbindung mit SharePoint Online herstellen. Anweisungen finden Sie unter Herstellen einer Verbindung mit SharePoint Online PowerShell.

Schritt 1: Erstellen neuer Websitesammlungen mithilfe von PowerShell

Erstellen Sie mehrere Websites mit PowerShell und einer .csv Datei, die Sie mit dem bereitgestellten Beispielcode und Editor erstellen. Hierzu ersetzen Sie die in Klammern stehende Platzhalter-Information durch Ihre eigenen Website- und Mandant-spezifischen Informationen. Mit diesem Prozess können Sie eine einzelne Datei erstellen und einen einzelnen PowerShell-Befehl ausführen, der diese Datei verwendet. Die durchgeführten Maßnahmen sind sowohl wiederholbar als auch tragbar und es werden viele, wenn nicht alle Fehler vermieden, die durch die Eingabe der Befehle in die SharePoint Online-Verwaltungsshell entstehen können. Dieses Verfahren lässt sich in zwei Teile aufteilen. Zuerst erstellen Sie eine .csv-Datei und verweisen dann mithilfe von PowerShell auf diese .csv Datei, die deren Inhalt zum Erstellen der Websites verwendet.

Das PowerShell-Cmdlet importiert die .csv-Datei und leitet sie an eine Schleife in den geschweiften Klammern weiter, die die erste Zeile der Datei als Spaltenüberschriften liest. Das PowerShell-Cmdlet durchläuft dann die verbleibenden Datensätze, erstellt eine neue Websitesammlung für jeden Datensatz und weist eigenschaften der Websitesammlung entsprechend den Spaltenüberschriften zu.

Erstellen einer CSV-Datei

Hinweis

Der Ressourcenkontingentparameter funktioniert nur auf klassischen Websites. Wenn Sie diesen Parameter auf einer modernen Website verwenden, erhalten Sie möglicherweise eine Warnmeldung, dass er veraltet ist.

  1. Öffnen Sie den Editor und fügen Sie den folgenden Textblock ein:

    Owner,StorageQuota,Url,ResourceQuota,Template,TimeZoneID,Name
    owner@tenant.onmicrosoft.com,100,https://tenant.sharepoint.com/sites/TeamSite01,25,EHS#1,10,Contoso Team Site
    owner@tenant.onmicrosoft.com,100,https://tenant.sharepoint.com/sites/Blog01,25,BLOG#0,10,Contoso Blog
    owner@tenant.onmicrosoft.com,150,https://tenant.sharepoint.com/sites/Project01,25,PROJECTSITE#0,10,Project Alpha
    owner@tenant.onmicrosoft.com,150,https://tenant.sharepoint.com/sites/Community01,25,COMMUNITY#0,10,Community Site
    

    Dabei ist mandant der Name Ihres Mandanten, und Besitzer ist der Benutzername des Benutzers auf Ihrem Mandanten, dem Sie die Rolle des primären Websitesammlungsadministrators zuweisen möchten.

    (Sie können STRG+H drücken, wenn Sie editor verwenden, um einen Massenaustausch schneller zu ermöglichen.)

  2. Speichern Sie die Datei auf Ihrem Desktop als SiteCollections.csv.

Tipp

Bevor Sie diese oder eine andere .csv oder Windows PowerShell Skriptdatei verwenden, empfiehlt es sich, sicherzustellen, dass keine überflüssigen oder nicht druckbaren Zeichen vorhanden sind. Öffnen Sie die Datei in Word und klicken Sie auf dem Menüband auf das Symbol Absatz, um nicht druckbare Zeichen anzuzeigen. Es sollten keine überflüssigen, nicht druckbaren Zeichen vorhanden sein. Es sollten beispielsweise keine Absatzmarken nach dem letzten Absatz am Ende der Datei vorkommen.

Ausführen des PowerShell-Befehls

  1. Geben Sie an der Windows PowerShell Eingabeaufforderung den folgenden Befehl ein, oder kopieren Sie ihn, fügen Sie ihn ein, und drücken Sie die EINGABETASTE:

    Import-Csv C:\users\MyAlias\desktop\SiteCollections.csv | ForEach-Object {New-SPOSite -Owner $_.Owner -StorageQuota $_.StorageQuota -Url $_.Url -NoWait -ResourceQuota $_.ResourceQuota -Template $_.Template -TimeZoneID $_.TimeZoneID -Title $_.Name}
    

    MyAlias entspricht Ihrem Benutzeralias.

  2. Warten Sie, bis die Windows PowerShell-Eingabeaufforderung wieder erscheint. Dies kann einige Minuten dauern.

  3. Bei Aufforderung durch Windows PowerShell geben Sie das folgende Cmdlet ein, oder kopieren und fügen Sie es ein, und drücken Sie die EINGABETASTE:

    Get-SPOSite -Detailed | Format-Table -AutoSize
    
  4. Beachten Sie die neuen Websitesammlungen in der Liste. In unserer BEISPIEL-CSV-Datei würden die folgenden Websitesammlungen angezeigt: TeamSite01, Blog01, Project01 und Community01

Fertig! Sie haben mehrere Websitesammlungen mit der von Ihnen erstellten .csv-Datei und einem einzelnen Windows PowerShell-Befehl erstellt. Sie können jetzt Benutzer erstellen und zu diesen Websites hinzufügen.

Schritt 2: Hinzufügen von Benutzern und Gruppen

Sie werden nun Benutzer erstellen und sie zu einer Websitesammlungsgruppe hinzufügen. Sie werden danach mithilfe einer .csv-Datei große Mengen an neuen Gruppen und Benutzern hochladen.

Die folgenden Verfahren verwenden weiterhin die Beispielwebsites TeamSite01, Blog01, Project01 und Community01.

Erstellen von CSV und ps1-Dateien

  1. Öffnen Sie den Editor und fügen Sie den folgenden Textblock ein:

    Site,Group,PermissionLevels
    https://tenant.sharepoint.com/sites/Community01,Contoso Project Leads,Full Control
    https://tenant.sharepoint.com/sites/Community01,Contoso Auditors,View Only
    https://tenant.sharepoint.com/sites/Community01,Contoso Designers,Design
    https://tenant.sharepoint.com/sites/TeamSite01,XT1000 Team Leads,Full Control
    https://tenant.sharepoint.com/sites/TeamSite01,XT1000 Advisors,Edit
    https://tenant.sharepoint.com/sites/Blog01,Contoso Blog Designers,Design
    https://tenant.sharepoint.com/sites/Blog01,Contoso Blog Editors,Edit
    https://tenant.sharepoint.com/sites/Project01,Project Alpha Approvers,Full Control
    

    Dabei entspricht der Mandant Ihrem Mandantennamen.

  2. Speichern Sie die Datei auf Ihrem Desktop als GroupsAndPermissions.csv.

  3. Öffnen Sie eine neue Instanz von Notepad und fügen Sie den folgenden Textblock ein:

    Group,LoginName,Site
    Contoso Project Leads,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/Community01
    Contoso Auditors,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/Community01
    Contoso Designers,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/Community01
    XT1000 Team Leads,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/TeamSite01
    XT1000 Advisors,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/TeamSite01
    Contoso Blog Designers,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/Blog01
    Contoso Blog Editors,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/Blog01
    Project Alpha Approvers,username@tenant.onmicrosoft.com,https://tenant.sharepoint.com/sites/Project01
    

    Dabei entspricht der Mandant Ihrem Mandantennamen und benutzername dem Benutzernamen eines vorhandenen Benutzers.

  4. Speichern Sie die Datei auf Ihrem Desktop als Users.csv.

  5. Öffnen Sie eine neue Instanz von Notepad und fügen Sie den folgenden Textblock ein:

    Import-Csv C:\users\MyAlias\desktop\GroupsAndPermissions.csv | ForEach-Object {New-SPOSiteGroup -Group $_.Group -PermissionLevels $_.PermissionLevels -Site $_.Site}
    Import-Csv C:\users\MyAlias\desktop\Users.csv | where {Add-SPOUser -Group $_.Group –LoginName $_.LoginName -Site $_.Site}
    

    Dabei entspricht MyAlias dem Benutzernamen des Benutzers, der derzeit angemeldet ist.

  6. Speichern Sie die Datei auf Ihrem Desktop als UsersAndGroups.ps1. Das ist ein einfaches Windows PowerShell-Skript.

Sie können jetzt das Skript UsersAndGroup.ps1 durchlaufen lassen, um Benutzer und Gruppen zu mehreren Websitesammlungen hinzuzufügen.

Ausführen von Skript UsersAndGroups.ps1

  1. Gehen Sie zurück zu der SharePoint Online-Verwaltungsshell.

  2. Bei Aufforderung durch Windows PowerShell geben sie die folgende Zeile ein, oder kopieren und fügen Sie sie ein, und drücken Sie die EINGABETASTE:

    Set-ExecutionPolicy Bypass
    
  3. Drücken Sie an der Bestätigungsaufforderung Y.

  4. Bei Aufforderung durch Windows PowerShell geben Sie Folgendes ein oder kopieren und fügen es ein, und drücken Sie die EINGABETASTE:

    c:\users\MyAlias\desktop\UsersAndGroups.ps1
    

    MyAlias entspricht Ihrem Benutzernamen.

  5. Warten Sie, bis die Eingabeaufforderung wieder erscheint, bevor Sie fortfahren. Zuerst werden Sie die Gruppen sehen, sobald diese erstellt sind. Sobald Benutzer hinzugefügt werden, sehen Sie wiederholt die Gruppenliste.

Siehe auch

Herstellen einer Verbindung mit SharePoint Online PowerShell

Verwalten von SharePoint Online-Websitegruppen mit PowerShell

Verwalten von Microsoft 365 mit PowerShell

Erste Schritte mit PowerShell für Microsoft 365