У этого скрипта нет какой-то фундаментальной задачи, он не делает ничего экстраординарного. Это своего рода наглядный материал и не более. Я применяю его, когда нужно удостовериться в правильности пароля учётной записи пользователя в Active Directory.
Эта штуковина особенно актуальна, если нужно проверить какую-то сервисную учётную запись.
[System.Console]::Title = "Диагностика подключения пользователя к домену"
$username = Read-Host "Имя пользователя"
$password = Read-Host "Пароль пользователя"
$status = (Get-ADUser $username).Enabled
$logontest = (New-Object DirectoryServices.DirectoryEntry "",$username,$password).psbase.name -ne $null
if ($status) { Write-Host "Пользователь включён!" -ForegroundColor Green }
else { Write-Host "Пользователь выключен!" -ForegroundColor Red }
if ($logontest) { Write-Host "Указанный пароль для пользователя $username действителен!" -ForegroundColor Green }
else { Write-Host "Указанный пароль для пользователя $username недействителен!" -ForegroundColor Red }
Read-Host
Скрипт проверяет включена ли учётная запись, а следом проверяет правильность пароля.
У данного скрипта есть ещё одна версия, написанная специально для сборки в exe.