Recherche de site Web

Obtenir un groupe unifié - Gérer les groupes Microsoft 365


La cmdlet Get-UnifiedGroup fait partie du module Exchange Online et vous permet de voir tous les groupes Microsoft 365. Lorsque vous combinez la cmdlet avec la cmdlet Get-UnifiedGroupLinks, vous pouvez alors voir tous les groupes et membres dans PowerShell.

Il peut sembler un peu étrange de gérer vos groupes Microsoft 365 avec le module Exchange Online, mais cela fonctionne toujours très bien. Cependant, vous pouvez également utiliser le nouveau module Microsoft Entra PowerShell si vous le souhaitez.

Dans cet article, je vais vous montrer comment obtenir les informations sur le groupe Microsoft 365 avec la cmdlet Get-UnifiedGroup, exporter des groupes vers Excel et afficher les membres du groupe avec la cmdlet Get-UnifiedGroupLinks.

Exigences

Le cmdlet Get-UnifiedGroup fait partie du module PowerShell d'Exchange Online. Avant de pouvoir utiliser le cmdlet, vous devez vous assurer que vous avez installé le module Exchange Online et que vous êtes connecté à Exchange Online.

Connect to Exchange Online
Connect-ExchangeOnline -UserPrincipalName admin@contoso.com -ShowBanner:$false

Si vous n'êtes pas connecté à EO, alors vous obtiendrez l'erreur suivante lorsque vous essaierez d'utiliser la cmdlet:

Get-UnifiedGroup : Le terme 'Get-UnifiedGroup' n'est pas reconnu comme le nom d'un cmdlet

Obtenir tous les groupes Microsoft 365

Lorsque vous exécutez la cmdlet sans aucun paramètre, elle renverra simplement tous les groupes Microsoft 365 dans votre locataire avec les informations de base, comme vous pouvez le voir sur la capture d'écran ci-dessous.

Get-UnifiedGroup

L'exemple ci-dessus provient d'un petit environnement, donc nous avons tous les groupes dans un aperçu. Mais lorsque vous avez un grand environnement, vous voudrez probablement utiliser des filtres pour n'obtenir que les groupes que vous recherchez.

En ce qui concerne le filtrage, nous avons quelques options qui sont vraiment utiles. Nous pouvons obtenir des groupes bien sûr en fonction du nom (nom d'affichage), mais nous pouvons aussi obtenir tous les groupes avec un propriétaire spécifique, ou sans propriétaire. Ou encore pratique, tous les groupes qui sont créés lorsqu'une équipe Microsoft a été créée.

Obtenir un groupe spécifique

Nous pouvons également obtenir un groupe Microsoft 365 en fonction du nom du groupe ou d'une partie de celui-ci. Si vous connaissez le nom exact, il est donc plus facile d'utiliser le paramètre -Identity suivi du nom du groupe.

Mais quand vous ne connaissez pas le nom exact, vous pouvez également utiliser l'option -Filter et rechercher une partie du nom du groupe avec des caractères génériques :

Get group based on name
Get-UnifiedGroup -Identity "Lazy Project"

Use wildcards to find the group
Get-UnifiedGroup -Filter {name -like "Lazy*"}

Obtenir le groupe avec ou sans propriétaire

Nous pouvons également obtenir les groupes en fonction du propriétaire avec la cmdlet Get-UnifiedGroup. Cela est particulièrement utile lorsque vous souhaitez savoir quels groupes un utilisateur spécifique gère, ou même si vous devez remplacer le propriétaire de plusieurs groupes.

Pour obtenir le propriétaire, nous devons comparer les propriétés ManagedBy des objets de groupe :

Get-UnifiedGroup | Where-Object {$_.ManagedBy -eq "MeganB"}

Et pour obtenir tous les groupes sans propriétaire, nous pouvons utiliser la commande suivante :

Get-UnifiedGroup | Where-Object {-Not $_.ManagedBy}

J'ai également créé un script qui vous permet d'obtenir tous les groupes sans propriétaire, et de définir automatiquement un propriétaire pour vous. Le script peut soit définir un membre du groupe comme propriétaire (tout en vous donnant la possibilité d'en choisir un) soit revenir à un utilisateur par défaut à définir comme propriétaire.

Obtenir des groupes provisionnés Microsoft Teams

La dernière option que je veux vous montrer est comment vous pouvez obtenir tous les groupes qui sont créés lors de la création d'une équipe Microsoft. Pour cela, nous pouvons utiliser la propriété ResourceProvisioningOptions et vérifier si elle est égale à Équipe:

Get-UnifiedGroup -Filter {ResourceProvisioningOptions -eq "Team"}

Exporter tous les groupes

Lorsque vous souhaitez exporter les informations du groupe vers Excel par exemple, il est important de sélectionner uniquement les données dont vous avez vraiment besoin. Sinon, vous obtiendrez beaucoup plus d'informations que nécessaire, ce qui rendra le traitement des données plus difficile.

Ci-dessous, j'ai créé un exemple avec les informations les plus utiles dont vous pourriez avoir besoin. J'ai également ajouté une propriété calculée pour compter le nombre de propriétaires d'un groupe.

$properties = 
        "DisplayName",
        "AccessType",
        "PrimarySmtpAddress",
        @{
            Name = 'GroupOwnerCount' 
            Expression = { $_.ManagedBy.count }
        },
        "GroupMemberCount",
        "GroupExternalMemberCount",
        "SharePointSiteUrl",
        "ManagedBy",
        "WhenCreated"

Get all groups
Get-UnifiedGroup | Select-Object -Property $properties | Export-CSV -path "C:\temp\groups.csv"

Vous pouvez trouver le script complet ici dans mon référentiel GitHub

Obtenir les membres du groupe

Nous savons maintenant comment obtenir les groupes Microsoft 365, voyons également comment obtenir les membres du groupe. Pour obtenir les membres du groupe, nous devrons utiliser la cmdlet Get-UnifiedGroupLinks. Cette cmdlet renverra soit les membres, soit le propriétaire du groupe donné.

Pour obtenir les membres ou les propriétaires d'un groupe, nous pouvons utiliser la commande suivante :

Get the group member
Get-UnifiedGroupLinks -Identity "Lazy project" -LinkType member

Get the group owners
Get-UnifiedGroupLinks -Identity "Lazy project" -LinkType owner

Pour obtenir un aperçu complet, nous devrons combiner les deux commandes. Nous pouvons le faire en utilisant PSCustomObject pour combiner les résultats en un seul tableau. Nous devons également filtrer les propriétaires de la liste des membres, car un propriétaire est toujours aussi un membre du groupe.

J'ai créé un script qui va récupérer tous les membres et propriétaires des groupes Microsoft 365 pour vous, les combiner en un aperçu et vous permettre d'exporter les résultats vers Excel si vous le souhaitez.

Ajouter et supprimer des membres du groupe

La dernière chose que je veux vous montrer est comment vous pouvez ajouter et retirer des membres ou des propriétaires d'un groupe. En ce qui concerne les propriétaires, il est important de savoir qu'avant de pouvoir ajouter un utilisateur en tant que propriétaire, vous devez d'abord faire de cet utilisateur un membre. Nous pouvons ensuite promouvoir le membre en tant que propriétaire.

Pour retirer un propriétaire, nous devons inverser les étapes, donc d'abord rétrograder le propriétaire au statut de membre du groupe, puis nous pourrons retirer le membre.

Donc, pour ajouter des membres à un groupe, vous pouvez utiliser la commande suivante :

Add a user as member
Add-UnifiedGroupLinks -Identity "Lazy Project" -LinkType Members  -Links johndoe@contoso.com

Make from the member user an owner
Add-UnifiedGroupLinks -Identity "Lazy Project" -LinkType Owners -Links johndoe@contoso.com
  • Identité : le pseudonyme, le nom d'affichage ou l'adresse e-mail du groupe
  • TypeDeLien: peut être Abonnés, Membres ou Propriétaires
  • Liens : Alias, nom d'affichage ou adresse e-mail des utilisateurs que vous souhaitez ajouter. (Plusieurs utilisateurs peuvent être ajoutés avec une séparation par des virgules)

Supprimer un membre ou un propriétaire est assez similaire, nous utilisons uniquement la cmdlet Remove-UnifiedGroupLinks :

Remove an owner
Remove-UnifiedGroupLinks -Identity "Lazy Project" -LinkType Owners -Links johndoe@contoso.com 
Remove-UnifiedGroupLinks -Identity "Lazy Project" -LinkType Members -Links johndoe@contoso.com

To remove only a member
Remove-UnifiedGroupLinks -Identity "Lazy Project" -LinkType Members -Links janedoe@contoso.com 

Conclure

Il est toujours bon de vérifier régulièrement les groupes et leurs propriétaires dans votre locataire Microsoft 365. Surtout avec les groupes qui sont créés automatiquement avec Teams, vous voyez parfois plusieurs groupes avec presque le même nom. Ces aperçus peuvent vous aider à identifier les problèmes et à fusionner tous les groupes ensemble.

En plus du cmdlet get-unifiedgroup, nous pouvons également utiliser le nouveau module PowerShell Microsoft Entra pour gérer les groupes. Assurez-vous de le vérifier également.

J'espère que vous aimez l'article, si vous avez des questions, laissez simplement un commentaire ci-dessous.