- PowerShell offre un contrôle complet et une automatisation avancée pour gérer les utilisateurs et les groupes sur les plates-formes locales et de domaine et dans le cloud.
- Les modules et les applets de commande vous permettent de créer, modifier, interroger ou supprimer des utilisateurs individuellement ou en masse, optimisant ainsi les processus et minimisant les erreurs.
- Intégration avec des services tels qu'Active Directory, Microsoft 365 y SharePoint permet de gérer les identités à grande échelle et dans des environnements hybrides.

L'administration des utilisateurs via PowerShell est devenue un outil essentiel et polyvalent, tant pour les environnements d'entreprise que pour les utilisateurs avancés recherchant une gestion efficace des comptes, notamment sur les serveurs et postes de travail Windows . PowerShell permet l'automatisation des tâches, un gain de temps et un contrôle précis des utilisateurs, des groupes et des autorisations grâce à des modules locaux et à ceux destinés à Active Directory ou aux services cloud.
Cet article vous apprendra en détail à gérer les utilisateurs depuis PowerShell dans diverses situations, de la gestion locale aux scénarios de domaine, en passant par l'automatisation de masse et l'interaction avec des plateformes comme Microsoft 365 et SharePoint. Vous découvrirez également les bonnes pratiques, les commandes essentielles et des astuces pour optimiser l'administration sans interface graphique.
Qu’est-ce que PowerShell et pourquoi est-il essentiel à la gestion des utilisateurs ?
PowerShell est un environnement d'automatisation et de script développé par Microsoft, qui combine sa propre interface de ligne de commande avec un puissant langage de script orienté objet. L'un de ses principaux atouts réside dans son intégration poussée avec le système d'exploitation Windows , permettant d'accéder aux objets système, aux utilisateurs, aux groupes et aux ressources réseau et de les manipuler à l'aide d'applets de commande.
Dans de nombreuses organisations et centres de données, notamment ceux qui privilégient la performance et la sécurité, la gestion par interface de ligne de commande (CLI) devient essentielle . L'absence d'interface graphique minimise la charge sur le système et facilite l'automatisation des tâches répétitives.
Modules et applets de commande PowerShell pour la gestion des utilisateurs
La gestion des utilisateurs dépend en grande partie des cmdlets et modules spécifiques installés sur votre système. PowerShell structure ses fonctionnalités en modules ; les principaux sont :
- Microsoft.PowerShell.LocalAccounts – Pour gérer les utilisateurs et les groupes locaux sur l’ordinateur.
- ActiveDirectory – Pour gérer les utilisateurs, les groupes et les ressources dans les domaines Active Directory.
- AzureAD y Microsoft.Online – Conçu pour la gestion des utilisateurs dans le cloud, comme Microsoft 365 ou Azure AD.
- Shell de gestion SharePoint Online – Vous permet de gérer les utilisateurs et les groupes dans les environnements SharePoint Online.
Chaque module propose une série d'applets de commande avec une syntaxe verbe-nom , par exemple New-LocalUser ou Get-ADUser . Ces commandes permettent de créer, interroger, modifier ou supprimer des utilisateurs et des groupes selon votre environnement.
Préparation initiale : exigences, installation et mise à niveau
Avant de commencer à gérer les utilisateurs, assurez-vous de remplir certaines conditions préalables de base :
- Assurez-vous que votre version de PowerShell est prise en charge, en utilisant obtenir l'hôte o $PSVersionTable.PSVersion.
- Mettre à jour l'aide de PowerShell avec Aide à la mise à jour avoir une documentation à jour.
- Installez les modules nécessaires selon vos besoins (par exemple, Module d'installation -Nom LocalAccount o Module d'importation ActiveDirectory pour les domaines).
- Exécutez la console en tant qu’administrateur pour disposer de tous les privilèges.
Importer et vérifier les modules :
- Get-Module -ListAvailable -Name Microsoft.Powershell.LocalAccounts pour voir si le module de comptes locaux est installé.
- Module d'importation ActiveDirectory pour charger le module de gestion AD.
Gestion des utilisateurs locaux avec PowerShell
Pour gérer les comptes utilisateurs qui existent uniquement sur la même machine, le module LocalAccounts est votre meilleur allié . Voici les principales procédures de gestion locale :
- Lister tous les utilisateurs locaux : Get-LocalUser
- Vérifier un compte spécifique : Get-LocalUser -Name « nom d'utilisateur »
- Créer un utilisateur local :
Pour créer un utilisateur sans mot de passe :
Nouvel utilisateur local « Nouvel utilisateur »
Pour associer un mot de passe en toute sécurité :
$Password = Read-Host -AsSecureString
New-LocalUser "Usuario2" -Password $Password -FullName "Nombre completo" -Description "Descripción del usuario"
Affecter à des groupes : Ajouter un utilisateur à un groupe en tant qu’administrateur :
Add-LocalGroupMember -Group "Administradores" -Member "Usuario2"
- Supprimer l'utilisateur : Supprimer-LocalUser « Utilisateur2 »
- Renommer l'utilisateur : Renommer-LocalUser -Nom "Utilisateur2" -NouveauNom "NouveauNom"
- Modifier les attributs : Set-LocalUser -Nom « Utilisateur2 » -Description « Nouveau rôle »
- Activer/Désactiver le compte : Activer-LocalUser / Désactiver-LocalUser -Nom « Utilisateur2 »
- Changer le mot de passe:
$password = Read-Host -AsSecureString
Get-LocalUser -Name 'Usuario2' | Set-LocalUser -Password $password
Gestion des groupes locaux
PowerShell permet également la gestion des groupes d'utilisateurs locaux pour accorder des autorisations ou segmenter les utilisateurs :
- Liste des groupes : Get-LocalGroup
- Créer un groupe : New-LocalGroup -Nom « Employés » -Description « Groupe d'employés »
- Ajouter des membres : Add-LocalGroupMember -GroupName Employees -Member User2
- Supprimer des membres : Supprimer-LocalGroupMember -GroupName Employees -Member User2
- Supprimer le groupe : Supprimer-LocalGroup -Nom Employés
Gestion des utilisateurs dans Active Directory (AD DS) avec PowerShell
La gestion des utilisateurs en environnement d'entreprise nécessite généralement le contrôle des comptes au sein d'un domaine, c'est-à-dire via les services de domaine Active Directory. Le module Active Directory étend considérablement ces possibilités :
Consultations d'information et audits
- Voir les informations sur la forêt : Get-ADForest
- Informations sur le domaine : Obtenir-ADDomain
- Contrôleurs de domaine : Get-ADDomainController
Les champs peuvent être filtrés et les sorties personnalisées à l'aide de tuyaux et de sélecteurs :
Get-ADDomain | Select Name, DomainMode | Format-Table
Pour afficher tous les utilisateurs : Get-ADUser -Filter *
Pour afficher les détails de l'utilisateur : Get-ADUser "nom_utilisateur" -Propriétés *
Gestion des utilisateurs dans le domaine
- Créer un utilisateur dans AD :
$userpassword = ConvertTo-SecureString -AsPlainText -Force -String "PASSWORD"
New-ADUser -Name "Usuario" -AccountPassword $userpassword
Vous pouvez ajouter plus de paramètres comme -Description, -Enabled $true et d'autres attributs personnalisés.
- Supprimer l'utilisateur dans AD : Supprimer-ADUser -Identity « CN=Utilisateur,CN=Utilisateurs,DC=domaine,DC=com »
- Activer/Désactiver le compte : Activer-ADAccount / Désactiver-ADAccount -Identité nom d'utilisateur
- Dupliquer un compte existant comme modèle :
New-ADUser -Name NuevoUsuario -GivenName "Nombre" -Surname "Apellido" -Path "CN=Users,DC=dominio,DC=local" -Instance PlantillaUsuario
- Modifier les attributs de l'utilisateur : Set-ADUser -Identity nom d'utilisateur -Description "Nouvelle description"
- Changer le mot de passe: Set-ADAccountPassword nom d'utilisateur (il vous demandera le mot de passe, ou utilisez -Reset pour forcer un changement sans connaître le précédent).
- Débloquer des comptes : Nom d'utilisateur du compte Unlock-ADAccount
- Supprimer plusieurs utilisateurs :
foreach ($i in $listaUsuarios) {
Remove-ADUser $i.user
}
Création et suppression massives d'utilisateurs dans AD et sur site
L'automatisation des processus est essentielle pour le traitement de grands volumes de données . Elle s'effectue généralement à l'aide de fichiers CSV et de scripts. La structure de base d'un fichier CSV comprend des en-têtes tels que nom, mot de passe ou utilisateur, mot de passe.
$usuarios=Import-Csv -Path c:\...\usuarios.csv
foreach ($i in $usuarios){
$clave=ConvertTo-SecureString $i.contra -AsPlainText -Force
New-LocalUser $i.nombre -Password $clave -AccountNeverExpires -PassNeverExpires
Add-LocalGroupMember -Group usuarios -Member $i.nombre
}
Pour supprimer des utilisateurs en masse :
foreach ($i in $usuarios){
Remove-LocalUser $i.nombre
}
Dans les environnements Active Directory , des scripts similaires pour New-ADUser et Remove-ADUser peuvent être créés après l'importation du fichier csv contenant les paramètres nécessaires.
Gestion des utilisateurs et des groupes dans Microsoft 365, Azure AD et SharePoint Online
La gestion des utilisateurs dans le cloud est devenue particulièrement importante grâce à la popularité de services tels que Microsoft 365, Azure AD et SharePoint Online. Dans ces environnements, des applets de commande et des modules spécifiques permettent un contrôle avancé :
- Connexion à Microsoft 365 et Azure : Avant d’effectuer toute opération, vous devez authentifier et connecter les modules PowerShell appropriés.
- Création et gestion des utilisateurs : Applets de commande telles que New-MsolUser, Set-MsolUser, Remove-MsolUser pour Microsoft Online.
- Gestion des licences, des rôles et des groupes : Vous pouvez attribuer des licences (Set-MsolUserLicense), modifier des rôles, ajouter des utilisateurs à des groupes ou manipuler des autorisations depuis la console.
Pour SharePoint Online :
- Liste des sites : Get-SPOSite
- Liste des groupes et des utilisateurs : Get-SPOSiteGroup et Get-SPOUser
- Ajouter un utilisateur au groupe : Ajouter-SPOUser -Groupe «Groupe» -Nom d'utilisateur «[email protected]» -Site «https://domain.sharepoint.com/sites/site»
- Supprimer l'utilisateur : Supprimer-SPOUser -Nom d'utilisateur «[email protected]» -Site «https://domain.sharepoint.com/sites/sitio» -Groupe «group»
- Automatisation avec des fichiers CSV : Importez des utilisateurs et des groupes en masse à l’aide d’Import-Csv en combinaison avec les applets de commande Add-SPOUser et New-SPOSiteGroup.
Personnalisation et utilisation avancée des applets de commande
L'un des atouts de PowerShell réside dans sa nature orientée objet . Vous pouvez manipuler les propriétés, filtrer les listes et adapter les scripts à presque tous les besoins.
- Filtrer les utilisateurs par nom, domaine ou groupe :
Get-ADUser -Filter 'Name -like "jio*"' | Select Name
- Modifier plusieurs attributs utilisateur à la fois :
Set-ADUser -Identity usuario -Company "Nombre Empresa" -Department "Soporte" -Office "Oficina Central"
- Copier les attributs d’un compte à un autre :
$origen=Get-ADUser -Identity UsuarioPlantilla -Properties Company, Office
Set-ADUser -Identity UsuarioDestino -Company $($origen.Company) -Office $($origen.Office)
Automatisation des rapports et des audits
PowerShell vous permet d'extraire toutes sortes d'informations et de générer des rapports personnalisés, ce qui est idéal pour les audits et le contrôle des changements :
- Générer un rapport sur les utilisateurs SharePoint :
Get-SPOSite | ForEach {Get-SPOUser –Site $_.Url} | Format-Table -Wrap -AutoSize | Out-File c:\UsersReport.txt -Force -Width 360 -Append
- Audit des inscriptions et des désinscriptions des utilisateurs : Utilisez des scripts qui analysent le domaine ou les fichiers CSV pour vérifier les utilisateurs ajoutés/supprimés au cours d'une période donnée.
Écrivain passionné par le monde des octets et de la technologie en général. J'aime partager mes connaissances à travers l'écriture, et c'est ce que je vais faire dans ce blog, vous montrer toutes les choses les plus intéressantes sur les gadgets, les logiciels, le matériel, les tendances technologiques et plus encore. Mon objectif est de vous aider à naviguer dans le monde numérique de manière simple et divertissante.
