Introduction
Les groupes Microsoft 365 sont des outils puissants permettant la collaboration entre utilisateurs à travers des services tels que les boîtes aux lettres partagées, les calendriers, et les sites SharePoint. Cependant, une gestion inefficace peut conduire à des groupes vides sans propriétaire, à des groupes inactifs consommant des licences inutiles ou même à des suppressions accidentelles de groupes critiques.
C'est pour répondre à ces problématiques que nous avons développé un script PowerShell avancé. Celui-ci simplifie la gestion des groupes Microsoft 365 en offrant 19 actions de gestion, notamment des opérations en mode bulk grâce à un fichier CSV. Dans cet article, nous détaillerons les fonctionnalités du script et la manière dont vous pouvez l'utiliser efficacement pour gérer vos groupes.
Comparatif des options de gestion disponibles
Gestion via le centre d'administration Microsoft 365
Le centre d'administration Microsoft 365 offre une interface utilisateur permettant de gérer les groupes en naviguant dans Équipes et groupes → Équipes et groupes actifs. Bien qu'intuitif pour les organisations avec peu de groupes, cette méthode comporte plusieurs limites :
- Absence de prise en charge des opérations bulk. Vous devez ajouter les membres un par un.
- Il faut passer entre diverses sections, comme la section Billing, pour gérer les licences associées aux groupes.
- Les fonctionnalités avancées, comme la création de groupes assignables à des rôles, sont absentes.
Gestion par le centre d'administration Entra
Le centre d'administration Entra permet également la gestion des groupes en naviguant vers Entra ID → Groupes → Vue d'ensemble. Le principal avantage est ici la possibilité de configurer des groupes assignables à des rôles. Cependant, cette option présente également ses limites :
- Absence de gestion des licences basée sur les groupes.
- Non adapté à la gestion en mode bulk, ce qui peut être pénalisant pour une grande échelle.
Gestion par PowerShell
Le PowerShell offre une flexibilité inégalée pour gérer des groupes à grande échelle grâce à des cmdlets comme :
1New-MgGroup, Update-MgGroup, Set-MgGroupLicense Cependant, son utilisation demande une expertise technique, rendant l'approche intimidante pour les administrateurs non familiers. Chaque action nécessite une compréhension approfondie des paramètres à utiliser.
Pourquoi choisir un script standardisé?
Un script unique automatisant ces processus garantit une gestion simplifiée et uniforme tout en réduisant les risques liés aux erreurs manuelles.
Détails et fonctionnalités du script PowerShell
Le script offre :
- 19 actions disponibles pour gérer les groupes Microsoft 365.
- 7 actions individuelles configurables via des invites.
- 12 actions bulk nécessitant un fichier CSV d'entrée.
- Support pour authentification basée sur certificat (CBA).
- Fonctionnalité pour des comptes avec authentification multi-facteurs (MFA).
- Automatisation via Task Scheduler ou Azure Automation.
- Log exporté automatiquement en CSV pour chaque exécution.
Mise en route avec le script
Méthode 1 : Exécution interactive
Utilisez cette méthode pour lancer le script avec une interface interactive. Les étapes :
1./M365GroupManagement.ps1Le script affichera un menu interactif où vous pourrez sélectionner une action, fournir les entrées nécessaires, et exécuter directement des tâches. Après chaque exécution, un fichier log en CSV est généré pour faciliter le suivi des opérations.
Méthode 2 : Exécution directe pour une seule action
Pour effectuer une action spécifique, exécutez le script avec le paramètre -Action :
1./M365GroupManagement.ps1 -Action 5Si l'action nécessite un fichier CSV d'entrée, ajoutez le chemin via :
1./M365GroupManagement.ps1 -Action 8 -InputCSVFilePath <CheminDuFichier>Méthode 3 : Mode multi-actions
Pour effectuer plusieurs opérations dans la même session, activez le mode :
1./M365GroupManagement.ps1 -MultipleActionsModeConseil
Utilisez le mode "MultipleActions" pour automatiser efficacement des processus lourds.
Méthode 4 : Exécution basée sur certificat
Pour une automatisation complète sans interaction utilisateur, configurez une authentification basée sur certificat. Assurez-vous que les permissions suivantes sont attribuées dans Microsoft Graph API :
- User.Read.All
- Group.ReadWrite.All
- Organization.Read.All
- RoleManagement.ReadWrite.Directory
Exécutez ensuite :
1./M365GroupManagement.ps1 -TenantId "<TenantId>" -ClientId "<ClientId>" -CertificateThumbprint "<Thumbprint>"Cette approche est idéale pour des tâches programmées via Task Scheduler ou Azure Automation.
Exemple d’utilisation : Ajouter des licences à un groupe
Pour assigner une licence à un groupe :
1./M365GroupManagement.ps1 -Action 3Une invite vous demandera l'email du groupe et le nom convivial de la licence (par exemple, Microsoft Copilot Studio Viral Trial).

Le fichier log indiquera l'état de chaque tâche exécutée.
Attention
Assurez-vous d’éviter les doubles affectations de licences (directes et basées sur des groupes), cela peut entraîner des coûts inutiles.
Automatisation pour opérations bulk
Pour les tâches impliquant plusieurs groupes ou utilisateurs, créez un fichier CSV. Exemple pour ajouter plusieurs utilisateurs à plusieurs groupes :

Exécutez le script avec le fichier en entrée :
1./M365GroupManagement.ps1 -Action 11 -InputCSVFilePath "<InputCSVFilePath>"
Exportation des logs
Le traitement bulk génère un fichier CSV spécifique contenant les résultats pour chaque ligne du fichier d’entrée.
Conclusion
Grâce à ce script, les administrateurs peuvent rationaliser la gestion des groupes Microsoft 365, réduire les efforts manuels, et améliorer l'efficacité opérationnelle. Que ce soit pour gérer des licences, supprimer des utilisateurs, ou structurer des groupes, ce script vous offre la flexibilité nécessaire.
Adoptez cette solution et simplifiez vos opérations dès aujourd'hui.




