проверка истечения жизни учетки в AD

image_pdfimage_print

Import-Module ActiveDirectory
#Set the target OU that will be searched for user accounts
$OU = «DC=axapta,DC=local»

$ADAccounts = Get-ADUser -LDAPFilter «(objectClass=user)» -searchbase $OU -properties accountExpires, AccountExpirationDate | Where-object {$_.Enabled -eq $true}

Write-Host «=-=-=-=-=-=-=-=-=-=-=-=-=-=»
Foreach ($ADAccount in $ADAccounts)
{
$samAccountName = $ADAccount.samAccountName
$userEmailAddress = $ADAccount.Mail
$userName = $ADAccount.Name
$userEnabled = $ADAccount.Enabled
$userexp = $ADAccount.accountExpires
if (($userexp -lt 9223372036854775807) -and ($userexp -gt 0))
{
$Exp = $ADAccount.AccountExpirationDate
$TodaysDate = Get-Date
$DaysToExpire = $Exp — $TodaysDate
#Calculating DaysToExpireDD to DD format (w/o fractional part and dot)
$DaysToExpireDD = $DaysToExpire.ToString() -Split («\S{17}$»)
### Write-host «Account $samAccountName expires on: $Exp. Days left: $DaysToExpireDD»
if (($DaysToExpire.Days -lt 15) -and ($DaysToExpire.Days -gt 0))
{
Write-Host «Account: $samAccountName; $userEmailAddress; $userName истекает «$Exp.ToString(‘dd-MMM-yyyy’)»Осталось $DaysToExpireDD дней»
}

$ListOfAccounts = $ListOfAccounts + $samAccountName ### + » — $DaysToExpireDD days left. Sent to $userEmailAddress<br>»
}
}

Оставьте комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.