У меня есть VBScript внутри HTA, который получает статус ping от локального вызова WMI. У меня также есть функция для получения времени последней перезагрузки удаленного компьютера.
Function GetReboot(strComputer)
Set objWMIService = GetObject _
("winmgmts:\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")
For Each objOS in colOperatingSystems
dtmBootup = objOS.LastBootUpTime
dtmLastBootupTime = WMIDateStringToDate(dtmBootup)
dtmSystemUptime = DateDiff("h", dtmLastBootUpTime, Now)
Wscript.Echo dtmSystemUptime
Next
GetReboot = dtmLastbootupTime
End Function
Это примерно то, что есть, очевидно, я объявляю переменные и у меня есть другая функция даты и т. Д.
Это работает, если я вызываю WMI "localhost", поскольку я являюсь локальным администратором. Однако, когда я выполняю вызов WMI к удаленному серверу, это работает, только если я вошел на локальный компьютер с учетной записью администратора AD.
Есть ли способ, с помощью которого я могу запросить у пользователя имя пользователя и пароль, а затем передать его вызову WMI, чтобы он работал как кто-либо, только с данными администратора?