Проверка учетных данных пользователя AD из скрипта PowerShell

В скриптах PowerShell, в которых у пользователя запрашиваются его имя и пароль, прежде чем приступать к выполнению действий иногда нужно сначала протестировать валидность введенных учетных данных. Если пользователь ввел неверные имя пользователя и пароль, нужно определить это и запросить их еще раз.

Если нужно проверить учетные данные пользователя в текущем домене, воспользуйтесь следующим скриптом PowerShell.

$creds=get-credential
Function Test-ADCredentials {
param($username, $password)
(New-Object DirectoryServices.DirectoryEntry "",$username,$password).psbase.name -ne $null
}
Test-ADCredentials -username $creds.UserName -password $creds.GetNetworkCredential().password

Введите имя доменного пользователя и его пароль в скрипте (можно использовать формат username , domainusername или [email protected] ). Если указаны действительные учетные данные пользователя, скрипт вернет True .

Если скрипт вернул False , возможные причины:

  • Неверное имя пользователя (проверьте, что пользователь существует) или пароль
  • Учетная запись пользователя в AD отключена или временно заблокирована
  • Домен недоступен
Этот PowerShell скрипт не использует PowerShell модуль для Active Directory из набора RSAT и его можно использовать для тестирования учетных данных пользователя с любого Windows компьютера.

Если нужно подключиться к контроллеру домена с компьютера в рабочей группе или другого домена, нужно указать LDAP строку для подключения к DC. Замените 4 строку на:

(New-Object System.DirectoryServices.DirectoryEntry 'LDAP://DC=winitpo,DC=loc', $username, $password).psbase.name -ne $null

Или можно подключиться к контроллеру домена по IP адресу:

(New-Object System.DirectoryServices.DirectoryEntry 'LDAP://192.168.158.10', $username, $password).psbase.name -ne $null

Если пользователь добавлен в защищенную группу ‘Protected Users’, нужно указывать имя пользователя с доменом ( remontkausername или [email protected] ). В этом случае будет использоваться Kerberos аутентификация, а не NTLM .
admin

Share
Published by
admin

Recent Posts

Apple: история логотипа

Как менялся логотип Apple на протяжении многих лет. Логотип Apple — это не просто символ,…

2 месяца ago

Security Boot Fail при загрузке Acer — решение проблемы

Security Boot Fail при загрузке Acer — решение проблемы При загрузке ноутбука Acer с флешки,…

2 месяца ago

Ноутбук не включается — варианты решения

Ноутбук не включается — варианты решения Если при попытке включить ноутбук вы обнаруживаете, что он…

2 месяца ago

The AC power adapter wattage and type cannot be determined — причины и решение

The AC power adapter wattage and type cannot be determined — причины и решение При…

2 месяца ago

Свистит или звенит блок питания компьютера — причины и решения

Свистит или звенит блок питания компьютера — причины и решения Некоторые владельцы ПК могут обратить…

2 месяца ago

Мигает Caps Lock на ноутбуке HP — почему и что делать?

Мигает Caps Lock на ноутбуке HP — почему и что делать? При включении ноутбука HP…

2 месяца ago