15/11/2024

AstucesPowerShell

Modifier le mot de passe d’un compte local avec PowerShell

I. Présentation

L'historique commande "net user" peut être utilisée sur Windows pour créer un utilisateur, mais aussi modifier son mot de passe. Cette action de modification du mot de passe est faisable aussi avec PowerShell, c'est ce que nous allons voir dans ce court tutoriel.

II. Modifier mot de passe en PowerShell

La commande Get-User sans paramètre permet de lister les utilisateurs locaux. Nous utiliserons cette commande par la suite.

Get-LocalUser

Ensuite, nous allons stocker le nouveau mot de passe dans la variable $NewPwd. L'exemple ci-dessous s'appuie sur Read-Host, donc vous devrez saisir le nouveau mot de passe dans la console.

$NewPwd = Read-Host -AsSecureString

Plutôt que de récupérer le mot de passe via une saisie dans la console, nous pouvons le stocker directement dans le script, avec une méthode classique, où le mot de passe doit être définit dans la variable $NewPwdText et il sera transformé en chaîne sécurisé pour être stocké dans $NewPwd :

$NewPwdText = "My@@Script"
$NewPwd = $NewPwdText | ConvertTo-SecureString -AsPlainText -Force

Pour modifier le mot de passe de l'utilisateur "admin", nous allons à la fois utiliser le cmdlet Get-LocalUser puis "Set-LocalUser" qui offre la possibilité de modifier l'utilisateur, y compris son mot de passe.

Ce qui nous donne la commande ci-dessous, vous remarquerez que l'on attribue à l'utilisateur le mot de passe récupéré précédemment dans $NewPwd.

Get-LocalUser -Name "admin" | Set-LocalUser -Password $NewPwd

Si vous souhaitez que l'utilisateur puisse changer son mot de passe mais qu'il n'expire pas, vous pouvez aussi modifier ce paramétrage selon vos besoins en ajoutant les paramètres "UserMayChangePassword" et "PasswordNeverExpires" à la commande, ce qui donne :

Get-LocalUser -Name "admin" | Set-LocalUser -Password $NewPwd -UserMayChangePassword $true -PasswordNeverExpires $true

Voilà, vous pouvez modifier le mot de passe d'un compte local avec un script PowerShell 😉

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

2 commentaires sur “Modifier le mot de passe d’un compte local avec PowerShell

  • Merci c’est très bien expliqué et détaillé !

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.