Búsqueda de sitios web

Administrar equipos de Microsoft usando PowerShell


Microsoft Teams es una herramienta de colaboración basada en chat que proporciona una colaboración eficiente al reunir herramientas relacionadas. Gestionar equipos puede resultar un desafío, especialmente para organizaciones grandes con múltiples equipos y canales. Aquí es donde entra en juego PowerShell. PowerShell es un potente lenguaje de programación que puede automatizar muchas tareas, incluida la gestión de equipos. En esta guía, le mostraremos cómo usar PowerShell para administrar su entorno de Microsoft Teams.

Con PowerShell, podemos automatizar muchas cosas como lo hacemos con cualquier otro producto de Microsoft como SharePoint. A partir de la administración, la personalización, la gobernanza, la estandarización de la configuración del equipo, etc. Se proporciona un conjunto de cmdlets para trabajar con el equipo central y su configuración:

  • Gestión de equipos: Nuevo equipo, Obtener equipo, Establecer equipo
  • Administrar usuarios del equipo Agregar-TeamUser, Quitar-TeamUser
  • Gestionar los canales del equipo New-TeamChannel, Remove-TeamChannel

Se recomienda ejecutar los cmdlets de PowerShell como administrador global o administrador de servicios de Teams para trabajar con todos los equipos de su organización. Sin embargo, los usuarios finales aún pueden ejecutar estos cmdlets, pero solo funcionarán en los equipos que poseen o de los que son miembros.

Microsoft Teams versus grupo de Office 365: la creación de un nuevo Microsoft Teams crea un grupo de Office 365 internamente (sin embargo, la creación de un grupo de Office 365 no crea Microsoft Teams). Ambos comparten la misma identificación.

¿Cómo utilizar PowerShell para administrar Microsoft Teams?

Lo primero que debe hacer es instalar el módulo PowerShell para Microsoft Teams en su máquina antes de ejecutar cualquier cmdlet de PowerShell para Teams. Abra la consola de Windows PowerShell como administrador e ingrese:


Install-Module MicrosoftTeams

En mi otro artículo se explica más sobre la instalación del módulo PowerShell para Microsoft Teams y la conexión de equipos desde PowerShell: ¿Cómo conectarse a Microsoft Teams usando PowerShell?

Una vez que instale el módulo Teams PowerShell, podrá conectarse a Teams y trabajar según sus requisitos. Si tiene PowerShell ISE abierto, asegúrese de reiniciar PowerShell ISE después de instalar el módulo para cargar correctamente los cmdlets.

Obtener una lista de equipos de Microsoft con PowerShell
Para obtener todos los equipos de su entorno, utilice lo siguiente:


#Connect to Microsoft Teams
Connect-MicrosoftTeams -Credential (Get-Credential)

#Get all Teams
Get-Team

Este PowerShell enumera todos los equipos de su entorno de Office 365. Este cmdlet obtendrá GroupID, DisplayName, Visibility, Archived, MailNickName y Descripción como salida.

Podemos auditar todos los equipos y generar un informe con todos los usuarios y sus niveles de permisos en los equipos. Obtengamos la lista del inventario de todos los equipos y exportémosla a un archivo 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 

Este script de PowerShell genera una lista de todos los equipos junto con los miembros y propietarios de cada equipo.

Crear un nuevo equipo usando PowerShell
Para crear un nuevo equipo usando PowerShell, use:


#Create New Team
New-Team -DisplayName "Warehouse Managers" -Visibility Private

Este PowerShell crea un equipo. Tenga en cuenta que el cmdlet New-Team solo toma dos parámetros obligatorios como se indicó anteriormente. Puede agregar parámetros opcionales como descripción, propietarios, etc.


New-Team -DisplayName "Warehouse Managers" -Visibility Public -Description "Teams for Warehouse Managers" -MailNickName "warehousemgr" -Owner "Salaudeen@crescent.com"

Actualizar la configuración del equipo usando PowerShell
De manera similar, puede actualizar el equipo existente con PowerShell. Por ejemplo, cambiemos el nombre para mostrar usando PowerShell.


Set-Team -GroupId "209c685a-903a-4086-9962-9584566950d7" -DisplayName "Crescent Warehouse Managers" 

PowerShell para eliminar un equipo
Para eliminar un equipo de Microsoft con PowerShell, utilice el cmdlet Remove-Team. P.ej.


Remove-Team -GroupId "209c685a-903a-4086-9962-9584566950d7"

Administrar miembros del equipo a través de PowerShell
Para obtener membresía en un equipo existente, use: cmdlet Get-TeamUser. Esto te permite obtener todos los usuarios del equipo.


Get-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa"

Para obtener propietarios y miembros del equipo, utilice lo siguiente:


#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

Para agregar un propietario a un equipo con PowerShell, use el cmdlet Add-TeamUser:


Add-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -User "Steve@crescent.com" -Role Owner

Esto lo establece el dueño del equipo. Para agregar un usuario como miembro de un equipo, use:


Add-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -User "Steve@crescentintranet.com" -Role Member

¿Qué tal agregar un usuario a todos los equipos?


#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
}

Para eliminar un usuario de Microsoft Teams con PowerShell, use el cmdlet Remove-TeamUser.


#Remove user from team
Remove-TeamUser -GroupId "d06fc37a-44a9-4bff-8d9a-7f57616be6fa" -User "Steve@crescent.com"

Consulte la documentación de Microsoft sobre equipos como https://github.com/MicrosoftDocs/office-docs-powershell/tree/master/teams/teams-ps/teams

Terminando

En resumen, usar PowerShell para administrar Microsoft Teams puede ayudarlo a automatizar tareas y optimizar su flujo de trabajo. Ya sea que administre una pequeña empresa o una gran empresa, PowerShell puede ayudarlo a administrar su entorno de Teams de manera más eficiente. Con esta guía, ahora debería comprender bien cómo usar PowerShell para administrar su entorno de Teams, incluida la creación y administración de equipos, canales y miembros.

Artículos relacionados