Перейти к содержимому

Как Убрать переключатель PasswordNeverExpired

Скрипт работает по OU=External, убирает переключатель “пароль не когда не истекает”, меняет дату создания пароля на текушую.

<# .SYNOPSIS
    Убрать переключатель PasswordNeverExpired
.DESCRIPTION
    Скрипт работает по OU=External, убирает переключатель "пароль не когда не истекает", меняет дату создания пароля на текушую.
#>
#╔════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗#
$Host.UI.RawUI.WindowTitle = "Убрать переключатель PasswordNeverExpired"
#╚════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝#
[system.gc]::Collect()
Import-Module ActiveDirectory
 
#------ Logging section ------#
 
$fileLocation = (gi $MyInvocation.InvocationName) | ForEach-Object {
    $fileDirectory = "$($_.DirectoryName)\$($_.BaseName)";
    "$fileDirectory\$($_.BaseName)_$('{0:yyyy-MM-dd}'-f(date))";
    if (!(Test-Path "$fileDirectory")) {
        ni "$fileDirectory" -ItemType "directory" | Out-Null
    }
}
 
#------ Variables ------#
$UserAD = ''
$Result = @()
$tAD = 'pwdLastSet','PasswordNeverExpires','SamAccountName','CanonicalName'
$OrgUnit = "OU=External,OU=Locations,DC=adminbd.ru,DC=ru"
$UserAD = Get-ADUser -SearchBase $OrgUnit -Filter {PasswordNeverExpires -eq "True" -and Enabled -eq "True"} -Properties $tAD
 
#------ Execution ------#
 
foreach ($item in $UserAD) {
    $detailed = [ordered]@{
        SamAccountName = $item.SamAccountName
        CanonicalName = $item.CanonicalName   
    }
    Set-ADUser $item.SamAccountName -PasswordNeverExpires:$False
    $item.pwdLastSet = 0
    Set-ADUser -Instance $item
    $item.pwdLastSet = -1
    Set-ADUser -Instance $item
    $Result += New-Object PSObject -Property $detailed
}
$Result | Export-CSV -Path "$fileLocation" -NoTypeInformation -Append -Force -Encoding "UTF8" -Delimiter ";"
Get-ChildItem $fileDirectory -Recurse | where {$_.LastWriteTime -lt (Get-Date).AddDays(-15)} | Remove-Item -force

 

Similar Posts:

Метки:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *