J’ai besoin d’un script PowerShell qui teste les identifiants d’un utilisateur dans AD et qui puisse aussi réinitialiser le mot de passe si nécessaire. Comment valider un nom d’utilisateur et un mot de passe contre Active Directory via PowerShell ?
Voici comment tester les identifiants d’un utilisateur dans AD avec PowerShell :
$username = "utilisateur"
$password = "motdepasse"
$domain = "DOMAINE"
Add-Type -AssemblyName System.DirectoryServices.AccountManagement
$ct = [System.DirectoryServices.AccountManagement.ContextType]::Domain
$pc = New-Object System.DirectoryServices.AccountManagement.PrincipalContext($ct, $domain)
$result = $pc.ValidateCredentials($username, $password)
Write-Output "Identifiants valides : $result"
Pour réinitialiser le mot de passe :
Set-ADAccountPassword -Identity $username -Reset -NewPassword (ConvertTo-SecureString "NouveauMotDePasse" -AsPlainText -Force)