Téléverser les fichiers vers "/"
This commit is contained in:
31
update_expiration_date.ps1
Normal file
31
update_expiration_date.ps1
Normal file
@@ -0,0 +1,31 @@
|
||||
Import-Module ActiveDirectory
|
||||
|
||||
# 1. D<>finir la date d'expiration <20> HIER (expiration imm<6D>diate)
|
||||
$yesterday = (Get-Date).AddDays(-1)
|
||||
|
||||
Write-Host "--- Mise <20> jour Expiration : Licenciement Production/Assembler ---" -ForegroundColor Red
|
||||
Write-Host "Date d'expiration fix<69>e au : $($yesterday.ToShortDateString())" -ForegroundColor Gray
|
||||
|
||||
# 2. Cibler le D<>partement Production et le Titre Assembler
|
||||
$dept = "Production"
|
||||
$job = "Assembler"
|
||||
|
||||
# Note : J'inclus 'Description' dans le filtre par s<>curit<69> au cas o<> le champ 'Title' serait vide
|
||||
$users = Get-ADUser -Filter "Department -eq '$dept' -and (Title -eq '$job' -or Description -eq '$job')" -Properties Department, Title, Description
|
||||
|
||||
if ($users) {
|
||||
Write-Host "$($users.Count) employ<6F>s identifi<66>s pour le d<>part." -ForegroundColor White
|
||||
|
||||
foreach ($u in $users) {
|
||||
try {
|
||||
# Application de la nouvelle date
|
||||
Set-ADAccountExpiration -Identity $u.SamAccountName -DateTime $yesterday -ErrorAction Stop
|
||||
|
||||
Write-Host "[EXPIR<49>] Compte d<>sactiv<69> pour : $($u.Name)" -ForegroundColor Yellow
|
||||
} catch {
|
||||
Write-Host "[ERREUR] <20>chec sur $($u.Name) : $($_.Exception.Message)" -ForegroundColor DarkRed
|
||||
}
|
||||
}
|
||||
} else {
|
||||
Write-Host "Aucun utilisateur correspondant trouv<75> ($dept - $job)." -ForegroundColor Green
|
||||
}
|
||||
Reference in New Issue
Block a user