PowerShell pour Active Directory — Avancé
Gestion en masse
Créer plusieurs utilisateurs depuis un CSV
Import-Csv .\users.csv | ForEach-Object {
New-ADUser -Name $_.Name -SamAccountName $_.Login -UserPrincipalName $_.UPN -Path $_.OU -AccountPassword (ConvertTo-SecureString $_.Password -AsPlainText -Force) -Enabled $true
}
CSV attendu :
Name,Login,UPN,OU,Password
Alice Martin,amartin,amartin@entreprise.local,"OU=RH,DC=entreprise,DC=local",P@ssw0rd!
Audit et rapports
Trouver les comptes inactifs depuis 90 jours
Search-ADAccount -AccountInactive -TimeSpan 90.00:00:00 -UsersOnly
Exporter les utilisateurs avec attributs
Get-ADUser -Filter * -Properties Department,Title | Select-Object Name,Department,Title | Export-Csv ad_export.csv -NoTypeInformation
Gestion avancée
Réinitialiser un mot de passe
Set-ADAccountPassword -Identity jmartin -NewPassword (ConvertTo-SecureString "NewPassword123!" -AsPlainText -Force) -Reset
Forcer l’expiration à la prochaine connexion
Set-ADUser jmartin -ChangePasswordAtLogon $true
Supprimer des utilisateurs en masse
Get-ADUser -Filter {Department -eq "Temporaire"} | Remove-ADUser -Confirm:$false
Bonnes pratiques
Warning
Toujours tester les scripts sur un environnement de préproduction ou avec
-WhatIf
.
Tip
Documenter et versionner vos scripts PowerShell comme du code logiciel.