Как изменить учетные данные пользователя службы Windows из командной строки? - PullRequest
30 голосов
/ 08 июня 2009

Как изменить учетные данные пользователя службы Windows из командной строки?

Ответы [ 3 ]

61 голосов
/ 25 августа 2009
sc.exe config "Service Name" obj= "DOMAIN\User" password= "password" type= own

См. Ярлык Настройка учетных данных для входа в систему для служб Windows »jonathanmalek.com .

@ MattT указывает, что в Windows Server 2008R2 вы должны добавить type= own, но до этой версии это не нужно.

В PowerShell 3+ вы можете избежать экранирования аргументов с помощью символа stop-parsing : --%

sc.exe --% config "Service Name" obj= "DOMAIN\User" password= "password" type= own
9 голосов
/ 08 июня 2009

Я просто позвонил WMI из powershell, чтобы сделать это.

$Svc = Get-WmiObject win32_service -filter "name='ServiceName'"
$Svc.Change($Null, $Null, $Null, $Null, $Null, $Null, "User", "Password")

Не забудьте потом перезапустить службу:

Stop-Service -Name 'ServiceName'
Start-Service -Name 'ServiceName'

Дополнительные сведения о WMI и службах см. В разделе Win32_Service Class

2 голосов
/ 14 марта 2016

Использование WMI приводит к незашифрованному обмену данными между вашей машиной и машиной, на которой вы меняете учетные данные службы. Таким образом, ваш новый пароль может быть легко обнаружен. Вам просто нужно проанализировать отправку большого двоичного объекта по сети. К настоящему времени я не нашел действительно безопасного способа удаленного изменения пароля учетной записи службы с помощью инструмента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...