Archive

Archives pour 09/09/2009

Filter les comptes avec PasswordNeverExpires

Ce script exporte les comptes avec l'option "PasswordNeverExpires" et "UserCannotChangePassword". Dans le fichier exporté, la valeur "Deny" dans la colonne "UserCannotChangePassword" indique que l'utilisateur en peut pas changer son mot de passe. Si elle est vide l'utilisateur a accès.
?View Code POWERSHELL
$result = New-Item -ItemType file -Path .\passwordstats.csv -Force
Add-Content -Path $result -Value "Name,UserPrincipalName,PasswordNeverExpires,UserCannotChangePassword,ParentContainer"
Get-QADUser -SizeLimit 0 | Where-Object { $_.PasswordNeverExpires -eq "true" } | ForEach-Object {
$perm = Get-QADPermission -Identity $_.DN -Deny -ExtendedRight User-Change-Password -Account "Self"
Add-Content -Path $result -Value "$($_.Name),$($_.NTAccountName),$($_.PasswordNeverExpires),$($perm.AccessControlType),$($_.ParentContainer)"
}
Categories: Active Directory Tags:

Traiter aléatoirement une liste de compte.

Permet de traiter de façon aléatoire un certain nombre d'utilisateurs dans une listés dans un fichier.
?View Code POWERSHELL
$impfile = ".\impfile.txt"
$resfile = New-Item -ItemType file -Path $impfile -Force
$expfile = ".\expfile.txt"
Get-Mailbox -Identity *christophe* | Select-Object DisplayName,Alias | Export-Csv -Path $expfile
Add-Content -Path $resfile -Value "DisplayName,Alias"
$result = Get-Content -Path $expfile | Get-Random -Count 4
Add-Content -Path $resfile -Value $result
Import-Csv -path $resfile | foreach {
Get-QADUser -Identity $_.alias | Ft Displayname,UserPrincipalName,PasswordAge,PasswordExpires
}
Categories: Powershell Tags: ,