Active Directory - установить пароли для всей группы

У меня есть активный сервер каталогов, где пользователи разделены на различные группы безопасности, и я пытался найти способ сбросить пароли для всех сразу.

Итак, сначала я подумал, что могу просто использовать dsquery. Команда

dsquery group -name "<group>" -uc | dsget group -members -uc 

достал мне строки для всех пользователей. Это хорошо и все, но когда я отправлял вывод в файл, cmd всегда сохранял его как файл ANSI, независимо от настроек кодовой страницы и т. Д. Это повредило вывод, и я не смог загрузить его обратно, чтобы перебрать его, и вы можете нелегко сохранить выходные данные переданных по конвейеру программ в переменную в пакетном режиме, чтобы это было вне окна.

dsquery на powershell просто отказался работать. С DN или нет, он всегда говорил, что "объект каталога не найден". ( Как видно здесь.)

То же самое с Get-ADUser а также Get-ADGroup и т.д. команды от модуля AD PowerShell ( как те, которые описаны здесь). У них либо истекло время ожидания, либо они просто вышли, ничего не возвращая. Нет ошибки, нет сообщения об успехе, ничего. Конечно, пароли остаются без изменений.

Итак, вопрос в том, как мне поменять пароли сразу для всей группы?

1 ответ

Решение

Что-то вроде Get-AdGroupMember -Identity 'GroupName' -Recursive должен получить список пользователей; если список выглядит правильно, то Get-AdGroupMember -Identity 'GroupName' -Recursive | Set-AdAccountPassword -Reset -NewPassword 'SomePassword' следует изменить их все.

Другие вопросы по тегам