Измените (не сбрасывайте!) Пароль пользователя моего домена в командной строке

12

Я прочитал о команде net user <username> <password> /domain«изменить» пароль моей учетной записи домена. Но это не требует моего текущего пароля, и у меня складывается впечатление (хотя никто не предупреждал меня об этом явно), что он обычно не меняет / обновляет мой пароль, а вместо этого сбрасывает его. Это будет означать, что я потеряю доступ ко всем зашифрованным вещам, связанным с моими учетными данными, e. г. EFS.

Как я могу изменить свой пароль для учетной записи домена в командной строке, не теряя шифрования доступа? Я ищу полный функциональный эквивалент интерфейса Ctrl + Alt + Delete / Change Password для автоматизации. Он также должен принять текущий пароль в качестве параметра командной строки, если это необходимо.

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

ygoe
источник
@Ramhound Linux работает совершенно иначе. Он содержит один текстовый файл с хэшами паролей, которые используются только для входа в систему. Вы можете использовать альтернативные методы входа в систему, такие как ключи SSH или su, и при этом иметь все свои данные. Windows связывает криптографические данные с вашими учетными данными, и это то, что теряется при неправильном обновлении пароля, т.е. е. сбросить его Упомянутая ниже команда Powershell также требует старый пароль, если не указан ключ -reset.
ygoe

Ответы:

5

Он не запрашивает ваш текущий пароль, потому что, вероятно, вы запускаете команду / скрипт от себя, поэтому он использует ваши учетные данные.

Для этого вы можете использовать PowerShell Set-ADAccountPassword , если вы хотите, чтобы более мощная функция сменила ваш пароль. Вы также можете получить учетные данные от пользователя с помощью Get-Credential .

Вы можете использовать их после установки RSAT (Remote Server Admin Tools)и импорта модуля через команду Import-Module ActiveDirectory.

hagier
источник
Команда «Set-ADAccountPassword» не распознана. Откуда это взялось?
ygoe
Я обновил ответ, дайте мне знать, если у вас получится.
hagier
3
О, я не искал установки больших дополнительных платформ для этого. Так что я не могу это использовать. Все еще ищем простое решение командной строки.
ygoe
Вы пытаетесь написать сценарий действий ActiveDirectory, поэтому я предположил, что вы являетесь ИТ-администратором (RSAT является обязательным). Я понятия не имею, где у вас есть доступ, поэтому, возможно, посмотрите на эту статью .
hagier
2
Я упомянул Windows 7 в своем вопросе, и это машина, на которой я сижу. Я не администратор сети, я просто хочу автоматизировать изменение паролей обычных пользователей домена, и только при интерактивном входе в систему. Я ищу автоматизированный эквивалент Ctrl + Alt + Delete GUI с CMD, PS или простыми вызовами Win API. Поскольку это стандартный графический интерфейс для меня как пользователя, я не воспринимаю это как административную операцию.
ygoe
0

PowerShell.exe -команда "Set-ADAccountPassword -Identity" "-OldPassword (ConvertTo-SecureString -AsPlainText" "-Force) -NewPassword (ConvertTo-SecureString -AsPlainText" "-Force) -server" ""

Джеффри Уокер
источник
Я не понимаю
Pierre.Vriens