Comment gérer les utilisateurs depuis PowerShell : un guide complet étape par étape

Dernière mise à jour: 01/07/2025
Auteur: Isaac
  • 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.

Gérer les utilisateurs PowerShell

La gestion des utilisateurs via PowerShell est devenue une outil fondamental et polyvalent pour les environnements professionnels et les utilisateurs avancés souhaitant gérer efficacement leurs comptes, notamment sur les serveurs et les postes de travail Windows. PowerShell vous permet d’automatiser les tâches, de gagner du temps et d’obtenir un contrôle précis. des utilisateurs, des groupes et des autorisations utilisant à la fois des modules locaux et ceux pour Active Directory ou les services cloud.

Avec cet article, vous apprendrez en profondeur comment gérer les utilisateurs à partir de PowerShell Dans diverses situations, allant de la gestion locale aux scénarios de domaine, en passant par l'automatisation de masse et l'interaction avec des plateformes telles que Microsoft 365 et SharePoint. De plus, vous découvrirez les meilleures pratiques. commandes essentiels et astuces pour optimiser l'administration sans avoir besoin d'une interface graphique.

Qu’est-ce que PowerShell et pourquoi est-il essentiel à la gestion des utilisateurs ?

PowerShell est un environnement d'automatisation et de scriptDéveloppé par Microsoft, il combine sa propre ligne de commande avec un puissant langage de script orienté objet. L'un de ses principaux avantages est sa capacité à profondément intégré au système d'exploitation Windows, permettant l'accès et la manipulation des objets système, des utilisateurs, des groupes et des ressources réseau à l'aide de ce que l'on appelle des applets de commande.

Dans de nombreuses organisations et centres de données, en particulier ceux qui privilégient les performances et la sécurité, La gestion des CLI devient essentielle. L'absence d'interface graphique minimise la charge sur le système y favorise 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 applets de commande et des modules spécifiques installés sur votre système. PowerShell structure ses fonctionnalités de la manière suivante : modules, parmi les principaux figurent :

  • 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.
  Que puis-je faire pour bloquer l'accès à Facebook ? Comment supprimer l'accès restreint sur Facebook ?

Chaque module expose une série d'applets de commande avec une syntaxe verbe-nomPar exemple, Nouvel utilisateur local o Obtenir-ADUserCes commandes vous permettent de créer, d’afficher, de modifier ou de supprimer des utilisateurs et des groupes en fonction de votre environnement.

Préparation initiale : exigences, installation et mise à niveau

powershell

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

Lorsqu'il s'agit de gérer des comptes d'utilisateurs qui n'existent que sur votre propre ordinateur, 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 aux 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 entreprise nécessite souvent le contrôle des comptes au sein d'un domaine, c'est-à-dire sous les services de domaine Active Directory. Le module ActiveDirectory élargit considérablement les possibilités :

  Fond d'écran double moniteur pour Windows 10 :

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

Afficher tous les utilisateurs : Get-ADUser -Filtre *

Afficher les détails d'un utilisateur : Get-ADUser « nom d'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 lorsqu'il s'agit de traiter de gros volumesCela se fait généralement avec des fichiers .csv et des scripts. La structure de base du fichier .csv comprend des en-têtes tels que le nom, le compte, le nom d'utilisateur et le 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 peuvent être créés pour Nouvel utilisateur ADU y Supprimer-ADUser après avoir importé le fichier csv avec 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.
  Comment bloquer les publicités sur YouTube : méthodes efficaces et sûres

Pour SharePoint Online :

  • Liste des sites : Get-SPOSite
  • Liste des groupes et des utilisateurs : Get-SPOSiteGroup et Get-SPOUser
  • Ajouter un utilisateur au groupe : Add-SPOUser -Group «Groupe» -LoginName «user@domain.com» -Site «https://domain.sharepoint.com/sites/site»
  • Supprimer l'utilisateur : Supprimer-SPOUser -LoginName « user@domain.com » -Site « https://domain.sharepoint.com/sites/site » -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 points forts de PowerShell est sa nature orientée objetVous 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 contrôle de changement:

  • 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.