使用 PowerShell 管理 Microsoft 团队
Microsoft Teams 是一种基于聊天的协作工具,通过将相关工具整合在一起来提供高效的协作。管理团队可能具有挑战性,特别是对于拥有多个团队和渠道的大型组织。这就是 PowerShell 的用武之地。PowerShell 是一种功能强大的脚本语言,可以自动执行许多任务,包括管理团队。在本指南中,我们将向您展示如何使用 PowerShell 来管理您的 Microsoft Teams 环境。
使用 PowerShell,我们可以像使用 SharePoint 等任何其他 Microsoft 产品一样自动化许多工作。从管理、定制、治理、标准化团队设置等开始。提供了一组 cmdlet 用于与核心团队及其设置一起工作:
- 管理团队:New-Team、Get-Team、Set-Team
- 管理团队用户Add-TeamUser、Remove-TeamUser
- 管理团队频道New-TeamChannel、Remove-TeamChannel
建议以全局管理员或 Teams 服务管理员身份运行 PowerShell cmdlet,以便与组织中的所有团队合作。但是,最终用户仍然可以运行这些 cmdlet,但它们只能在他们拥有或所属的团队中工作。
如何使用PowerShell管理Microsoft Teams?
您需要做的第一件事是在计算机中安装适用于 Microsoft Teams 的 PowerShell 模块,然后再执行适用于 Teams 的任何 PowerShell cmdlet。以管理员身份打开 Windows PowerShell 控制台并输入:
Install-Module MicrosoftTeams
我的另一篇文章中解释了有关为 Microsoft Teams 安装 PowerShell 模块以及从 PowerShell 连接团队的更多信息:如何使用 PowerShell 连接到 Microsoft Teams?
安装 Teams PowerShell 模块后,您可以连接到 Teams 并满足您的要求。如果您已打开 PowerShell ISE,请务必在安装模块后重新启动 PowerShell ISE 以正确加载 cmdlet。
使用 PowerShell 获取 Microsoft 团队列表
要获取环境中的所有团队,请使用以下命令:
#Connect to Microsoft Teams
Connect-MicrosoftTeams -Credential (Get-Credential)
#Get all Teams
Get-Team
此 PowerShell 列出了 Office 365 环境中的所有团队。此 cmdlet 将获取 GroupID、DisplayName、Visibility、Archived、MailNickName 和 Description 作为输出。
我们可以审核所有团队并生成包含所有用户及其在团队中的权限级别的报告。让我们获取所有团队库存的列表并将其导出到 CSV 文件:
#Connect to Microsoft Teams
Connect-MicrosoftTeams -Credential (Get-Credential)
#Get all Teams
$AllTeams = Get-Team
$TeamData = @()
Foreach ($Team in $AllTeams)
{
#Collect Team Data
$TeamObjectID = $Team.GroupId.ToString()
$TeamData += [PSCustomObject] @{
TeamName = $Team.DisplayName
TeamID = $TeamObjectID
MailAlias = $Team.MailNickName
TeamType = $Team.Visibility
TeamOwners = (Get-TeamUser -GroupId $TeamObjectID | Where {$_.Role -eq 'Owner'}).Name -join '; '
TeamMembers = (Get-TeamUser -GroupId $TeamObjectID | Where {$_.Role -eq 'Member'}).Name -join '; '
}
}
$TeamData | Format-Table
$TeamData | Export-CSV "C:\Temp\TeamsList.csv" -NoTypeInformation
此 PowerShell 脚本生成所有团队以及每个团队的成员和所有者的列表。
使用 PowerShell 创建新团队
要使用 PowerShell 创建新团队,请使用:
#Create New Team
New-Team -DisplayName "Warehouse Managers" -Visibility Private
此 PowerShell 创建一个团队。请注意,New-Team cmdlet 仅采用上面给出的两个强制参数。您可以添加可选参数,例如描述、所有者等。
New-Team -DisplayName "Warehouse Managers" -Visibility Public -Description "Teams for Warehouse Managers" -MailNickName "warehousemgr" -Owner "Salaudeen@crescent.com"
使用 PowerShell 更新团队设置
同样,您可以使用 PowerShell 更新现有团队。例如,让我们使用 PowerShell 更改显示名称。
Set-Team -GroupId "209c685a-903a-4086-9962-9584566950d7" -DisplayName "Crescent Warehouse Managers"
使用 PowerShell 删除团队
要使用 PowerShell 删除 Microsoft 团队,请使用 Remove-Team cmdlet。例如。
Remove-Team -GroupId "209c685a-903a-4086-9962-9584566950d7"
通过 PowerShell 管理团队成员
要获取现有团队的成员资格,请使用:Get-TeamUser cmdlet。这将为您提供团队的所有用户。
Get-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa"
要获取团队的所有者和成员,请使用以下命令:
#Get Team Owners
Get-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -Role Owner
#Get Team Members
Get-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -Role Member
#Get Team Guests
Get-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -Role Guest
要使用 PowerShell 将所有者添加到团队,请使用 Add-TeamUser cmdlet:
Add-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -User "Steve@crescent.com" -Role Owner
这设置了团队的所有者。要将用户添加为团队成员,请使用:
Add-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -User "Steve@crescentintranet.com" -Role Member
将用户添加到所有团队怎么样?
#Get all Teams
$AllTeams = Get-Team
$UserToAdd = "Steve@Crescent.com"
#Add a user to all teams
ForEach ($Team in $AllTeams)
{
Write-Host "Adding to $($Team.DisplayName)"
Add-TeamUser -GroupId $Team.GroupID -User $UserToAdd -Role Member
}
要使用 PowerShell 从 Microsoft Teams 中删除用户,请使用 Remove-TeamUser cmdlet。
#Remove user from team
Remove-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -User "Steve@crescent.com"
查看有关团队的 Microsoft 文档:https://github.com/MicrosoftDocs/office-docs-powershell/tree/master/teams/teams-ps/teams
包起来
总之,使用 PowerShell 管理 Microsoft Teams 可以帮助您自动执行任务并简化工作流程。无论您管理小型企业还是大型企业,PowerShell 都可以帮助您更有效地管理 Teams 环境。通过本指南,您现在应该很好地了解如何使用 PowerShell 来管理 Teams 环境,包括创建和管理团队、渠道和成员。
