Создание сайтов SharePoint и добавление пользователей с помощью PowerShell

Эта статья относится к Microsoft 365 корпоративный и Office 365 корпоративный.

При использовании PowerShell для Microsoft 365 для создания сайтов SharePoint и добавления пользователей вы можете быстро и многократно выполнять задачи быстрее, чем в Центр администрирования Microsoft 365. Вы также можете выполнять задачи, которые невозможно выполнить в Центр администрирования Microsoft 365.

Подключитесь к SharePoint.

Процедуры, описанные в этой статье, требуют подключения к SharePoint. Инструкции см. в разделе Подключение к SharePoint PowerShell.

Шаг 1. Создание семейств веб-сайтов с помощью PowerShell

Создайте несколько сайтов с помощью PowerShell и файла .csv, который вы создаете с помощью примера кода и Блокнота. Для этой процедуры вы заменяете сведения о заполнителях, отображаемые в квадратных скобках, собственными сведениями о сайте и клиенте. Этот процесс позволяет создать один файл и выполнить одну команду PowerShell, которая использует этот файл. Это делает действия повторяемыми и переносимыми, а также устраняет многие, если не все, ошибки, которые могут возникнуть при вводе длинных команд в командную консоль SharePoint. Эта процедура имеет две части. Сначала создается файл .csv, а затем вы ссылаетесь на этот .csv файл с помощью PowerShell, который использует его содержимое для создания сайтов.

Командлет PowerShell импортирует файл .csv и передает его в цикл внутри фигурных скобок, который считывает открывающую строку файла в виде заголовков столбцов. Затем командлет PowerShell выполняет итерацию по оставшимся записям, создает новое семейство веб-сайтов для каждой записи и назначает свойства семейства веб-сайтов в соответствии с заголовками столбцов.

Создание CSV-файла

Примечание.

Параметр квоты ресурсов работает только на классических сайтах. Если вы используете этот параметр на современном сайте, вы можете получить предупреждение о том, что он не рекомендуется использовать.

  1. Откройте Блокнот и вставьте в него следующий блок текста:

    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
    

    Где клиент — это имя вашего клиента, а владелец — это имя пользователя в клиенте, которому вы хотите предоставить роль основного администратора сайта.

    (При использовании Блокнота для ускорения массовой замены можно нажать клавиши CTRL+H.)

  2. Сохраните файл на рабочем столе какSiteCollections.csv.

Совет

Перед использованием этого или любого другого файла скрипта .csv или Windows PowerShell рекомендуется убедиться, что нет лишних или непечатных символов. Откройте файл в Word и щелкните значок абзаца на ленте, чтобы показать непечатаемые символы. Файлы не должны содержать лишние непечатаемые символы. Например, в конце файла не должно быть знаков абзаца.

Выполнение команды Windows PowerShell

  1. В командной строке Windows PowerShell введите или скопируйте и вставьте следующую команду и нажмите клавишу ВВОД:

    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 равен псевдониму пользователя

  2. Дождитесь появления окна командной строки Windows PowerShell. Для этого может потребоваться одна или две минуты.

  3. В командной строке Windows PowerShell введите или скопируйте и вставьте следующий командлет, а затем нажмите клавишу ВВОД:

    Get-SPOSite -Detailed | Format-Table -AutoSize
    
  4. Обратите внимание на новые семейства веб-сайтов в списке. Используя наш пример CSV-файла, вы увидите следующие семейства веб-сайтов: TeamSite01, Blog01, Project01 и Community01.

Вот и все. Вы создали несколько семейств веб-сайтов с помощью созданного файла .csv и одной команды Windows PowerShell. Теперь вы можете создать пользователей и назначить их сайтам.

Действие 2. Добавление пользователей или групп

Теперь мы создадим пользователей и добавим их в группу семейства сайтов. Вы будете использовать файл .csv для массовой отправки новых групп и пользователей.

В следующих процедурах по-прежнему используются примеры сайтов TeamSite01, Blog01, Project01 и Community01.

Создание CSV- и PS1-файлов

  1. Откройте Блокнот и вставьте в него следующий блок текста:

    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
    

    Где клиент равен вашему имени клиента

  2. Сохраните файл на рабочем столе как GroupsAndPermissions.csv.

  3. Откройте новый экземпляр Блокнота и вставьте в него следующий блок текста:

    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
    

    Если клиент равен имени клиента, а имя пользователя — имени существующего пользователя.

  4. Сохраните файл на рабочем столе как Users.csv.

  5. Откройте новый экземпляр Блокнота и вставьте в него следующий блок текста:

    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}
    

    Где MyAlias равно имени пользователя, вошедшего в систему.

  6. Сохраните файл на рабочем столе какUsersAndGroups.ps1, что представляет собой простой скрипт Windows PowerShell.

Теперь вы можете выполнить скрипт UsersAndGroup.ps1, чтобы добавить пользователей и группы в несколько семейств сайтов.

Выполнение скрипта UsersAndGroups.ps1

  1. Вернитесь в командную консоль SharePoint.

  2. В командной строке Windows PowerShell введите или скопируйте и вставьте следующую строку и нажмите клавишу ВВОД:

    Set-ExecutionPolicy Bypass
    
  3. В запросе на подтверждение нажмите Y.

  4. В командной строке Windows PowerShell введите или скопируйте и вставьте следующее и нажмите клавишу ВВОД:

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

    Где MyAlias равно вашему имени пользователя

  5. Дождитесь появления окна командной строки. Сначала вы увидите, что группы отображаются по мере их создания. Затем вы увидите список групп, повторяемый при добавлении пользователей.

См. также

Подключение к SharePoint PowerShell

Управление группами сайтов SharePoint с помощью PowerShell

Управление Microsoft 365 с помощью PowerShell

Начало работы с PowerShell для Microsoft 365