Слишком много веселья и игр? Управляйте Microsoft Teams с помощью PowerShell

Опубликовано: 10 Марта, 2023
Слишком много веселья и игр? Управляйте Microsoft Teams с помощью PowerShell

PowerShell не только значительно расширил весь портфель продуктов и услуг, предлагаемых Microsoft. Это также стало основой, которую Microsoft теперь использует для создания многих из этих же продуктов и услуг. Вот почему ни для кого не должно быть сюрпризом, что Microsoft Teams, одна из новейших версий стабильной продукции Redmond, теперь включает поддержку PowerShell, которая позволяет автоматизировать и настраивать работу Teams различными способами. Для тех из вас, кто еще не окунулся и не изучил, что такое Teams, Microsoft описывает его как центр совместной работы в Office 365, который объединяет людей, контент и инструменты, необходимые вашей команде для более активного участия и эффективный. Короче говоря, Teams — это, по сути, программное обеспечение для группового чата, но на самом деле это намного больше, особенно благодаря поддержке PowerShell.

Microsoft начала предоставлять поддержку PowerShell для Teams еще в ноябре 2017 года в виде модуля PowerShell, который можно загрузить с GitHub. С тех пор Microsoft продолжала добавлять новые командлеты в этот модуль, и теперь вы можете делать много интересных вещей в Teams с помощью PowerShell. Например, вы можете использовать PowerShell для создания новых команд, массового добавления участников, установки разрешений для участников, настройки таких параметров, как назначение изображений участникам, создание новых каналов для совместной работы участников или даже создание веб-формы, которую пользователи могут использовать для создания новая команда в режиме самообслуживания без необходимости вмешательства администратора.

Чтобы получить представление о некоторых забавных и полезных вещах, которые вы можете делать с поддержкой PowerShell для Teams, я попросил своего коллегу Влада Катринеску предоставить нам краткую демонстрацию его возможностей. Влад — консультант по SharePoint и Office 365, специализирующийся на развертывании SharePoint и SharePoint Online, а также гибридных сценариях. Как автор Pluralsight, сертифицированный тренер Microsoft и признанный международный спикер, Влад помог сотням тысяч пользователей и ИТ-специалистов по всему миру лучше понять и максимально эффективно использовать SharePoint. Влад также является самым ценным профессионалом Microsoft (MVP) в SharePoint с 2013 года и ведет личный блог под названием Absolute SharePoint Blog, и он часто делится своими знаниями, выступая на местных конференциях и общественных мероприятиях. Влад также ведет блоги на CMSWire и Computerworld и часто фигурирует на других сайтах Microsoft, таких как Redmond Channel Partner. Вы также можете связаться с Владом в LinkedIn и подписаться на него в Twitter. Давайте теперь посмотрим, что Влад может показать нам по использованию PowerShell в Microsoft Teams.

Управление забавными настройками Microsoft Teams (и другими) с помощью PowerShell

Способы нашего общения изменились, и мы используем смайлики, мемы и картинки для общения с друзьями и семьей в нашей личной жизни через Facebook Messenger, WhatsApp или другие платформы, которые вы можете использовать. Microsoft Teams, который является одним из продуктов, поднимающих внедрение Office 365 на новый уровень, обеспечивает обмен мгновенными сообщениями на предприятии. Microsoft Teams по умолчанию позволяет пользователям использовать картинки и смайлики для самовыражения, что может быть здорово, но вы всегда хотите, чтобы это было включено? Некоторые причины для его отключения могут заключаться в том, что вы хотите убедиться, что все остаются серьезными в очень деликатном проекте, или просто хотите избежать проблем с интерпретацией команд, которые теперь разделены по всему миру. Вы можете просмотреть несколько примеров таких дел в судах в настоящее время, с тремя примерами здесь, здесь и здесь!

Чтобы автоматизировать управление политиками различных групп, сначала необходимо получить модуль Microsoft Teams из галереи PowerShell и подключиться к Microsoft Teams. Если вы хотите сделать это быстро без многофакторной проверки подлинности, вы можете просто скопировать и вставить следующие три командлета в окно PowerShell.

Install-Module -Name MicrosoftTeams $cred = Get-Credential Connect-MicrosoftTeams -Credential $cred

При многофакторной аутентификации вы не можете предварительно создать объект PS Credential, поэтому он будет выглядеть примерно так:

Install-Module -Name MicrosoftTeams Connect-MicrosoftTeams -AccountId [электронная почта защищена]

Теперь, чтобы настроить параметры для мемов и гифок, мы будем использовать командлет PowerShell Set-TeamFunSettings. (Отсюда и название блога.) Если бы я хотел отключить гифки и мемы во всех командах, я мог бы запустить что-то похожее на следующий скрипт:

$Teams = Get-Team foreach ($team in $Teams){ try{ Set-TeamFunSettings -GroupId $team.GroupId -AllowGiphy $false -AllowStickersAndMemes $false } catch{ $ErrorMessage = $_.Exception.Message Write-Host " $($Team.DisplayName)Сбой с ошибкой: "Write-Host $ErrorMessage -ForeGroundcolor Yellow }}

Еще один очень интересный параметр, который у вас есть, — это -GiphyContentRating, который позволяет вам переключать его между «Строгим» и «Умеренным», если вы хотите разрешить гифки, но убедитесь, что они супербезопасны для работы.

Это для забавных настроек, но можем ли мы взять ту же логику и вывести ее на следующий уровень и сделать частью более развитой автоматизированной системы? Абсолютно! Допустим, я работаю в организации, которая использует классификацию групп Office 365: «Открыто», «Конфиденциально», «Секретно» и «Совершенно секретно». В то время как Open и Confidential не так хорошо регулируются, бизнес требует, чтобы все группы, классифицированные как Secret и Top Secret, имели следующие характеристики:

  • Стикеры, мемы и гифки отключены
  • Пользователи не могут редактировать сообщения
  • Пользователи не могут удалять сообщения

Мне также пришлось бы подключиться к Exchange Online, чтобы получить классификацию, и я мог бы просто запустить следующий скрипт:

$Teams = Get-Team Foreach ($team в $Teams) { $OfficeGroupClassification = Get-UnifiedGroup -Identity $team.GroupId | Выберите классификацию, если ($OfficeGroupClassification.Classification -eq "Секретно" или $OfficeGroupClassification.Classification -eq "Совершенно секретно") { Set-TeamFunSettings -GroupId $team.GroupId -AllowStickersAndMemes $false Set-TeamMessagingSettings -GroupId $team.GroupId -AllowUserEditMessages $false -AllowUserDeleteMessages $false } }

Чтобы завершить эту короткую демонстрацию, Microsoft Teams — это одна из тех служб, которые пользователи, кажется, осваивают с сумасшедшей скоростью, и наша работа как ИТ-специалистов состоит в том, чтобы убедиться, что пользователи могут работать продуктивно, уважая безопасность компании, соответствие нормативным требованиям и правила этики. Модуль Teams для PowerShell позволяет автоматизировать определенные задачи управления, чтобы вы всегда могли убедиться, что правильные настройки применяются к вашим Microsoft Teams.

Где узнать больше

Некоторые ресурсы, чтобы узнать больше о PowerShell для Office 365:

  • PowerShell Playbook: Office 365 (курс Pluralsight)
  • Essential PowerShell для Office 365 (книга Amazon)