20 septembre 2022

Récupérer les membres d’une liste de distribution Microsoft 365

Dans mon nouveau boulot, en attendant un recrutement spécifique, je me retrouve à faire de l’administration système, notamment sur Microsoft 365. L’outil est extrêmement efficace en entreprise et permet un travail collaboratif très étendu. Cela dit, les outils d’admin sont une plaie absolue, ou rien n’est cohérent. Si pour les utilisateurs, le boulot est fait, en arrière-plan c’est un enfer. Par exemple, il n’y aucune option nulle part pour récupérer simplement les membres d’une liste de distribution. Sauf en powershell…


Installation des outils

  • On ouvre évidemment un terminal Powershell en mode administrateur.
    À chaque fois qu’il demande une validation, vous dites Oui [O] bien sûr, sinon ça marche pas.

Install-Module PowershellGet -Force
Install-Module -Name ExchangeOnlineManagement

  • On active l’exécution des scripts qui n’est pas possible par défaut.

Set-ExecutionPolicy RemoteSigned

  • On importe le module Exchange.

Import-Module ExchangeOnlineManagement

  • Enfin, on se connecte

Connect-ExchangeOnline

Là ça ouvre une page web où vous pouvez mettre votre login et mot de passe.
C’est possible uniquement si vous êtes admin hein.
Si ça marche, vous allez tomber sur ça :

Action

Maintenant c’est tout con :

Get-DistributionGroupMember -Identity « <le nom de la liste » | Select-Object -Property « DisplayName », »PrimarySmtpAddress » | Export-Csv c:\liste.csv

Le GetDistributionGroupMember fait ce qu’il dit, il récupère l’intégralité des membres, avec toutes leurs informations.

Le Select-Objet permet de réduire les champs à uniquement le nom et l’adresse. Faite un test sans cette commande, puis ouvrez le fichier généré pour voir la liste des champs. Y’en a plein.

Enfin, l’Export-Csv balance l’ensemble dans un fichier ouvrable par n’importe quel tableur.

Conclusion

Ce n’est pas très compliqué, mais ce n’est pas pratique. Il doit probablement y avoir des outils qui lancent ces commandes en arrière-plan, des trucs qui ne viennent pas de MS, mais je ne les connais pas. Si vous avez des connaissances dans ce sujet, je serai ravi de les connaitre.