martedì 19 gennaio 2021

PowerShell: Gestire Microsoft Teams

Microsoft Teams è l'hub per la collaborazione di Microsoft 365 che permette di integrare persone, contenuti e strumenti. Microsoft Teams può essere gestito attraverso il suo Admin Center, utilizzando PowerShell o tramite l'utilizzo di Microsoft Graph API. In questo articolo verranno mostrati i cmdlet PowerShell più comuni per la gestione di Microsoft Teams. Prima di iniziare è importante verificare il proprio ruolo di amministratore di Microsoft Teams, infatti i cmdlet utilizzabili dipendono dal ruolo ricoperto.
Microsoft Teams
FIG 1 - Microsoft Teams

Ruoli amministratore Microsoft Teams

In Azure Active Directory (Azure AD) è possibile designare gli amministratori che necessitano di livelli di accesso diversi per la gestione di Microsoft Teams. Gli amministratori possono essere abilitati a gestire l'intero carico di lavoro di Teams oppure possono avere autorizzazioni delegate per la risoluzione dei problemi di qualità delle chiamate o per gestire le esigenze di telefonia dell'organizzazione. A tale scopo sono disponibili cinque diversi ruoli di amministratore di Teams
  1. Amministratore del servizio teams
    Supervisiona il servizio Teams e si occupa di gestire e creare gruppi Microsoft 365.
  2. Amministratore comunicazioni Teams
    Gestisce le caratteristiche delle chiamate e delle riunioni all'interno del servizio Teams.
  3. Amministratore del dispositivo Teams
    Gestisce i dispositivi configurati per l'uso con il servizio Teams.
  4. Tecnico supporto comunicazioni Teams
    Risolve i problemi di comunicazione all'interno di Teams usando strumenti avanzati.
  5. Specialista supporto comunicazioni Teams
    Risolve i problemi di comunicazione in Teams usando gli strumenti di base (si tratta del ruolo con privilegi meno elevati).

Installare il modulo di PowerShell per Microsoft Teams

Prima di poter utilizzare i cmdlet è necessario installare il modulo di PowerShell per Microsoft Teams. Da PowerShell eseguire il comando
Install-Module -Name MicrosoftTeams

Accesso a Teams

Per accedere a Teams utilizzando il proprio nome utente e password eseguire i comandi
$cred=Get-Credential
Connect-MicrosoftTeams -Credential $cred

Per disconnettersi dall'ambiente Microsoft Teams eseguire il comando
Disconnect-MicrosoftTeams


Visualizzare i cmdlets disponibili

Per visualizzare l'elenco di tutti i cmdlet che è possibile utilizzare eseguire il comando
Get-TeamHelp


Creare e gestire un team

Un team può essere visto come un insieme di utenti che hanno un obbiettivo in comune. Per la creazione e la gestione di un team si utilizzano i seguenti cmdlet

1. New-team
Crea un nuovo team

Sintassi
New-team
   -DisplayName <String>
   [-Description <String>]
   [-MailNickName <String>]
   [-Classification <String>]
   [-Visibility <String>]
   [-Template <String>]
   [-Owner <String>]
   [-AllowGiphy <Boolean>]
   [-GiphyContentRating <String>]
   [-AllowStickersAndMemes <Boolean>]
   [-AllowCustomMemes <Boolean>]
   [-AllowGuestCreateUpdateChannels <Boolean>]
   [-AllowGuestDeleteChannels <Boolean>]
   [-AllowCreateUpdateChannels <Boolean>]
   [-AllowDeleteChannels <Boolean>]
   [-AllowAddRemoveApps <Boolean>]
   [-AllowCreateUpdateRemoveTabs <Boolean>]
   [-AllowCreateUpdateRemoveConnectors <Boolean>]
   [-AllowUserEditMessages <Boolean>]
   [-AllowUserDeleteMessages <Boolean>]
   [-AllowOwnerDeleteMessages <Boolean>]
   [-AllowTeamMentions <Boolean>]
   [-AllowChannelMentions <Boolean>]
   [-ShowInTeamsSearchAndSuggestions <Boolean>]
    [-RetainCreatedGroup <SwitchParameter>]
   [<CommonParameters>]

oppure

New-team
   -GroupId <String>
   [-Owner <String>]
   [-AllowGiphy <Boolean>]
   [-GiphyContentRating <String>]
   [-AllowStickersAndMemes <Boolean>]
   [-AllowCustomMemes <Boolean>]
   [-AllowGuestCreateUpdateChannels <Boolean>]
   [-AllowGuestDeleteChannels <Boolean>]
   [-AllowCreateUpdateChannels <Boolean>]
   [-AllowDeleteChannels <Boolean>]
   [-AllowAddRemoveApps <Boolean>]
   [-AllowCreateUpdateRemoveTabs <Boolean>]
   [-AllowCreateUpdateRemoveConnectors <Boolean>]
   [-AllowUserEditMessages <Boolean>]
   [-AllowUserDeleteMessages <Boolean>]
   [-AllowOwnerDeleteMessages <Boolean>]
   [-AllowTeamMentions <Boolean>]
   [-AllowChannelMentions <Boolean>][-ShowInTeamsSearchAndSuggestions <Boolean>]
   [-RetainCreatedGroup <SwitchParameter>]
   [<CommonParameters>]

Esempio 1
New-Team -DisplayName "Team1"   
Crea un nuovo team assegnandogli il nome Team1

Esempio 2
New-Team -DisplayName "Team1" -Description "Supporto Tecnico" -Visibility Public
Crea un nuovo team assegnandogli il nome Team1, viene aggiunta una descrizione al gruppo e tramite il parametro -Visibility il gruppo viene reso pubblico.

2. Get-team
Recupera un oggetto team con tutte le proprietà.

Sintassi
Get-team   
   -GroupId <String>
   [-User <String>]
   [-Archived <Boolean>]
   [-Visibility <String>]
   [-DisplayName <String>]
   [-MailNickName <String>]
   [<CommonParameters>]

oppure

Get-team
   [-User <String>]
   [-Archived <Boolean>]
   [-Visibility <String>]
   [-DisplayName <String>]
   [-MailNickName <String>]
   [<CommonParameters>]

Esempio 1
Get-Team -User glubrano@contoso.com
Visualizza tutti i team a cui l'utente specificato appartiene.

Esempio 2
Get-Team -Archived $true -Visibility Private
Restituisce tutti i team archiviati e privati.



3. Set-team
Permette di aggiornare/impostare le proprietà di un team

Sintassi
Set-team
   -GroupId <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-MailNickName <String>]
   [-Classification <String>]
   [-Visibility <String>]
   [-AllowGiphy <Boolean>]
   [-GiphyContentRating <String>]
   [-AllowStickersAndMemes <Boolean>]
   [-AllowCustomMemes <Boolean>]
   [-AllowGuestCreateUpdateChannels <Boolean>]
   [-AllowGuestDeleteChannels <Boolean>]
   [-AllowCreateUpdateChannels <Boolean>]
   [-AllowDeleteChannels <Boolean>]
   [-AllowAddRemoveApps <Boolean>]
   [-AllowCreateUpdateRemoveTabs <Boolean>]
   [-AllowCreateUpdateRemoveConnectors <Boolean>]
   [-AllowUserEditMessages <Boolean>]
   [-AllowUserDeleteMessages <Boolean>]
   [-AllowOwnerDeleteMessages <Boolean>]
   [-AllowTeamMentions <Boolean>]
   [-AllowChannelMentions <Boolean>]
   [-ShowInTeamsSearchAndSuggestions <Boolean>]
   [<CommonParameters>]
   
Esempio 1
Set-Team -GroupId 2f162b0e-36d2-4e15-8ba3-ba229cecdccf -DisplayName "Nome aggiornato" -Visibility Public   
Il comando aggiorna il Nome e il tipo di visibilità del team avente l'ID specificato.

  
4. Set-TeamPicture
Permette di impostare una foto per il team.

Sintassi
Set-TeamPicture
   -GroupId <String>
   -ImagePath <String>
   [<CommonParameters>]
   
Esempio 1
Set-TeamPicture -GroupId 2f162b0e-36d2-4e15-8ba3-ba229cecdccf -ImagePath c:\Immagini\Logo.png
Assegna l'immagine Logo.png al team avente l'ID specificato.

Il comando restituisce subito l'esito dell'operazione ma potrebbe essere necessario attendere 1 ora e riavviare l'applicazione per visualizzare la modifica.


5. Remove-team
Rimuove un team.

Sintassi
Remove-Team
      -GroupId <String>
      [<CommonParameters>]

Esempio 1   
Remove-Team -GroupId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df
Rimuovere il team avente l'ID specificato.



Aggiungere/rimuovere membri ad un team

Per aggiungere e rimuovere i membri di un team vengono utilizzati i cmdlet Add-TeamUser e Remove-TeamUser.

1. Add-teamuser
Aggiunge un utente al team specificato.

Sintassi
Add-TeamUser
   -GroupId <String>
   -User <String>
   [-Role <String>]
   [<CommonParameters>]
   
Esempio 1
Add-TeamUser -GroupId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -User glubrano@contoso.com
Aggiunge l'utente glubrano@contoso.com al team avente l'ID specificato.

2. Remove-TeamUser
Rimuove un utente dal team.

Sintassi
Remove-TeamUser
      -GroupId <String>
      -User <String>
      [-Role <String>]
      [<CommonParameters>]

Esempio 1
Remove-TeamUser -GroupId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -User glubrano@contoso.com -Role Owner
L'utente specificato viene rimosso dal ruolo di Proprietario ma rimane come membro del team.

Esempio 2
Remove-TeamUser -GroupId 31f1ff6c-d48c-4f8a-b2e1-abca7fd399df -User glubrano@contoso.com
L'utente specificato viene rimosso dal team.


Creare e rimuovere canali

Se un team è un gruppo di utenti che si riuniscono attorno ad un obiettivo comune, i canali sono gli spazi di collaborazione all'interno di un team in cui viene concretamente svolto il lavoro. I cmdlet New-TeamChannelRemove-TeamChannel vengono utilizzati per la creazione/rimozione di canali. 

1. New-TeamChannel 
Crea un nuovo canale all'interno di un team.

Sintassi
New-TeamChannel
   -GroupId <String>
   -DisplayName <String>
   [-Description <String>]
   [-MembershipType <String>]
   [-Owner <String>]
   [<CommonParameters>]
   
Esempio 1
New-TeamChannel -GroupId 126b90a5-e65a-4fef-98e3-d9b49f4acf12 -DisplayName "Ufficio"
Crea un nuovo canale con nome Ufficio nel gruppo team indicato. 

Esempio 2
New-TeamChannel -GroupId 126b90a5-e65a-4fef-98e3-d9b49f4acf12 -DisplayName "Ufficio" -MembershipType Private
Crea un nuovo canale privato con nome Ufficio nel gruppo team indicato. 

2. Remove-TeamChannel 
Cancella un canale all'interno di un team. Questo non cancellerà il contenuto delle schede associate.

Sintassi
Remove-TeamChannel
      -GroupId <String>
      -DisplayName <String>
      [<CommonParameters>]
  
Esempio 1
Remove-TeamChannel -GroupId 2f162b0e-36d2-4e15-8ba3-ba229cecdccf -DisplayName "Ufficio"  
Elimina il canale nominato Ufficio dal team avente ID indicato 





Nessun commento:

Posta un commento

I messaggi sono soggetti a moderazione da parte dell'amministratore prima della loro pubblicazione.