Ввод имени пользователя и пароля локального администратора в скрипте

8

В моей сети много клиентов, и я хочу, чтобы мой скрипт выполнял следующие действия:

[1] Откройте командную строку с повышенными привилегиями, используя данные локального администратора. Примечание: я не хочу вводить имя пользователя и пароль для каждого пользователя.

[2] Удалите Java с помощью следующей команды: "wmic product, где" name like 'java%' "call uninstall"

[3] Затем я хочу установить другую версию Java после перезагрузки ПК.

Я не слишком беспокоюсь о шагах 2 и 3 на данный момент, однако шаг 1 вызывает у меня некоторые проблемы. Я попробовал методы ниже:

команда runas
NirSoft программы
PowerShell

Мне просто интересно, возможно ли это, не заходя на каждый компьютер в сети и не вводя пароль локального администратора.

/programming/19098101/how-to-open-an-elevated-cmd-using-command-line-for-windows

Заранее спасибо. Timbo

timboslice101
источник
Если вы спрашиваете, можете ли вы пропустить приглашение UAC из сценария, ответ, конечно же, «нет». (Если бы это было возможно, все вредоносные программы сделали бы это.)
Bill_Stewart

Ответы:

11

Начните свою партию:

powershell.exe -Command "Start-Process cmd -Verb RunAs"
...
rest of script
...

Это откроет командную строку с повышенными правами

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

Если пользователь не является локальным администратором, у вас будет использовать ключ / savecred, это большая дыра в безопасности, как и у пользователя, и он может использовать ключ / savecred во всем, что пожелает.

Если у вас есть AD, вы всегда можете сделать это через GPO.

Энтони Форнито
источник
Спасибо за ответ, который я действительно ищу, так это способ ввода административных данных в сценарии без необходимости вручную вводить их на каждом ПК.
timboslice101