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

PowerShell модуль Microsoft Teams разработан для управления Teams из командной строки. Командлеты модуля можно использовать для более быстрого выполнения типовых задач администрирования и в сценариях автоматизации. В этой статье мы покажем, как установить PowerShell модуль Teams, и рассмотрим типовые команды, которые могут понадобится администратору Microsoft 365 для управления Teams.

Установка PowerShell модуля Microsoft Teams

Для установки модуля Microsoft Teams версия PowerShell на вашем компьютере должна быть не ниже 5.1. Вывести текущую версию можно с помощью команды:

$PSVersionTable.PSVersion

Обновите версию PowerShell , если нужно.

Вы можете установить модуль MS Teams из PowerShell Gallery с помощью команды:

Install-Module -Name MicrosoftTeams

Чтобы проверить, что модуль Teams установлен на компьютере и вывести его версию, выполните:

Get-Module MicrosoftTeams –ListAvailable

Вы можете установить определенную версию модуля из PSGallery. Выведите список доступных версий модуля:

Find-Module MicrosoftTeams -AllVersions

Чтобы установить определенную версию, используйте команду:

Install-Module -Name MicrosoftTeams -RequiredVersion 3.0.0

Для обновления версии модуля Teams выполните:

Update-Module -Name MicrosoftTeams

Полный список командлетов в модуле можно вывести так:

Get-Command –Module MicrosoftTeams

В версии модуля 3.1.0 доступно 579 командлетов и функций Teams.

Использование PowerShell модуля для управления Microsoft Teams

Для подключения к тенанту Teams в Microsoft 365 выполните команду (если для акканту включена:

Connect-MicrosoftTeams

Введите имя и пароль пользователя для подключения. Если для аккаунта пользователя Azure включена MFA , нужно выполнить подтвердить аутентификацию.

Для использования модуля Teams вашей учетной записи должна быть назначена одна из следующих ролей Azure:
  • Global Admin
  • Teams Service Admin
  • Teams Communications Admin
  • Teams Communications Support Engineer
  • Teams Communications Support Specialist

Вывести все команды Teams в вашем тенанте:
Get-Teams

Чтобы создать новую частную (private) команду в Teams выполните:

New-Team –DisplayName SysOps

При создании новой команда, автоматически создается группа Microsoft 365 с рабочими областями в Yammer, PowerBI, SharePoint и группой рассылки Exchange Online.

Вывести все настройки группы Teams:

get-team -DisplayName sysops|fl

GroupId : 52259fec-0a72-xxxx-96e2-8583xxxxxx_x000D_InternalId : [email protected]_x000D_DisplayName : SysOps_x000D_Description : SysOps Wiki Team_x000D_Visibility : Public_x000D_MailNickName : msteams_cxx92d_x000D_Classification :_x000D_Archived : False_x000D_AllowGiphy : True_x000D_GiphyContentRating : moderate_x000D_AllowStickersAndMemes : True_x000D_AllowCustomMemes : True_x000D_AllowGuestCreateUpdateChannels : False_x000D_ AllowGuestDeleteChannels : False_x000D_AllowCreateUpdateChannels : True_x000D_AllowCreatePrivateChannels : True_x000D_AllowDeleteChannels : True_x000D_AllowAddRemoveApps : True_x000D_AllowCreateUpdateRemoveTabs : True_x000D_AllowCreateUpdateRemoveConnectors : True_x000D_AllowUserEditMessages : True_x000D_AllowUserDeleteMessages : True_x000D_AllowOwnerDeleteMessages : True_x000D_AllowTeamMentions : True_x000D_AllowChannelMentions : True_x000D_ShowInTeamsSearchAndSuggestions : True

Можно изменить описание группы и видимость:

get-team -DisplayName sysops| Set-Team -Description "SysOps Wiki Team" -Visibility "Public"

Изменить картинку группы:

get-team -DisplayName sysops | Set-TeamPicture -ImagePath c:ImageNewTeamPicture.png

Добавить пользователя в группу:

get-team -DisplayName sysops| Add-TeamUser -User [email protected]

Добавить владельца группы:

get-team -DisplayName sysops| Add-TeamUser -User [email protected] -Role Owner

Добавить пользователя во все команды:

$AllTeams = Get-Team
$UserToAdd = " [email protected] "
ForEach ($Team in $AllTeams)
{
Write-Host "Adding to $($Team.DisplayName)”
Add-TeamUser -GroupId $Team.GroupID -User $UserToAdd -Role Member
}

Вывести список пользователей и владельцев группы Teams:

get-team -DisplayName sysops|Get-TeamUse

Вывести членов всех групп Teams и владельцев:

$AllTeams = (Get-Team).GroupID
TeamList = @()
Foreach ($CurTeam in $AllTeams)
{ $TeamGUID = $CurTeam.ToString()
$TeamName = (Get-Team | ?{$_.GroupID -eq $CurTeam}).DisplayName
$TeamOwner = (Get-TeamUser -GroupId $CurTeam | ?{$_.Role -eq 'Owner'}).Name
$TeamMember = (Get-TeamUser -GroupId $CurTeam | ?{$_.Role -eq 'Member'}).Name
$TeamList = $TeamList + [PSCustomObject]@{TeamName = $TeamName; TeamObjectID = $TeamGUID; TeamOwners = $TeamOwner -join ', '; TeamMembers = $TeamMember -join ', '}
}
$TeamList |fl

Удалить пользователя из владельцев группы Teams и из команды:

get-team -DisplayName sysops| Remove-TeamUser -User [email protected] -Role Owner
get-team -DisplayName sysops| Remove-TeamUser -User [email protected]

Чтобы создать новый закрытый канал в существующей группе Teams, выполните:

get-team -DisplayName sysops| New-TeamChannel -DisplayName “Windows_Wiki” -MembershipType Private

ли

Добавим пользователя в канал и назначим его владельцем:

get-team -DisplayName sysops| Add-TeamChannelUser -DisplayName “Windows_Wiki” -User [email protected] -Role Owner

Для удаления из канала:

get-team -DisplayName sysops| Remove-TeamChannelUser -DisplayName “Windows_Wiki” -User [email protected] -Role Owner

Если команда Teams не активна, но вы хотите сделать ее контент доступным пользователям на чтение, можно ее заархивировать:

get-team -DisplayName sysops|Set-TeamArchivedState -Archived $true

Удалить канал:

get-team -DisplayName sysops | Remove-TeamChannel -DisplayName “Windows_Wiki”

Полностью удалить команду Teams:

get-team -DisplayName sysops | Remove-Team

Создать новую политику Teams:

New-CsTeamsMessagingPolicy –Identity CsTeamsExternalUsersPolicy -AllowGiphy $false -AllowMemes $false –AllowUserChat $false

Identity : Tag:CsTeamsExternalUsersPolicy_x000D_Description :_x000D_AllowUrlPreviews : True_x000D_AllowOwnerDeleteMessage : False_x000D_AllowUserEditMessage : True_x000D_AllowUserDeleteMessage : True_x000D_AllowUserDeleteChat : True_x000D_AllowUserChat : False_x000D_AllowRemoveUser : True_x000D_AllowGiphy : False_x000D_GiphyRatingType : Moderate_x000D_AllowGiphyDisplay : True_x000D_AllowPasteInternetImage : True_x000D_AllowMemes : False_x000D_AllowImmersiveReader : True_x000D_AllowStickers : True_x000D_AllowUserTranslation : True_x000D_ReadReceiptsEnabledType : UserPreference_x000D_AllowPriorityMessages : True_x000D_AllowSmartReply : True_x000D_AllowSmartCompose : True_x000D_ChannelsInChatListEnabledType : DisabledUserOverride_x000D_AudioMessageEnabledType : ChatsAndChannels_x000D_ChatPermissionRole : Restricted_x000D_AllowFullChatPermissionUserToDeleteAnyMessage : False_x000D_AllowFluidCollaborate : False_x000D_AllowVideoMessages : True

Назначить политику Teams на пользователя:

Grant-CsTeamsMessagingPolicy -Identity [email protected] -PolicyName CsTeamsExternalUsersPolicy

Или на всех пользователей с определенным атрибутом в AzureAD:

Get-CsOnlineUser -Filter {Department -like '*External*'} | Grant-CsTeamsMessagingPolicy -PolicyName CsTeamsExternalUsersPolicy

После завершения PowerShell сеанса не забудьте отключиться от Microsoft Teams:

Disconnect-MicrosoftTeams

admin

Share
Published by
admin

Recent Posts

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…

2 недели ago

Настройка сети в VMware Workstation

В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…

2 недели ago

Логи брандмауэра Windows

Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…

2 недели ago

Правильный способ отключения IPv6

Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…

2 недели ago

Ключи реестра Windows, отвечающие за параметры экранной заставки

Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…

2 недели ago

Как управлять журналами событий из командной строки

В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…

2 недели ago