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

Можно ли получить LastBootUpTime удаленной машины (под управлением Windows), если вам не был предоставлен доступ к этому серверу; хотя сервер находится в той же сети и в том же домене, что и клиент?

Можно получить список разрешений для ящика, даже если вам не был предоставлен доступ к машине (пример PowerShell ниже), поэтому я надеюсь на это » Не совсем глупо подозревать, что может быть какой-то способ получить аналогичные данные по времени работы ... особенно если после загрузки компьютер обновляет какой-то атрибут AD, например LastLogonTimestamp или аналогичный?

([adsi]'WinNT://myServerName/Administrators, group').psbase.Invoke("members") `
| %{$_.GetType.Invoke().InvokeMember("Name",'GetProperty', $null, $_, $null)}

Я также написал код (PowerShell и C #), чтобы получить время последней загрузки сервера, когда текущий пользователь имеет разрешения на удаленном компьютере.

$arrayOfServers | Get-CimInstance Win32_OperatingSystem | select csname, lastbootuptime

Дополнительные примеры см. В моем решении соответствующего вопроса по SO: https://stackoverflow.com/questions/22965686/how-to-get-last-boot-time-of-a-remote-system- in-c-sharp-or-vb-with-a-non-admin-u / 52478378 # 52478378

0
задан 24 September 2018 в 14:48
1 ответ

Нет, но вы можете включить WMI для пользователя, не являющегося администратором, чтобы ограничить объем предоставленных разрешений, но это означает, что администратор должен будет включить пользователя.

Разрешение доступа пользователей в определенное пространство имен WMI

Вы можете разрешить или запретить пользователям доступ к определенному пространству имен WMI, установив Разрешение «Удаленное включение» в элементе управления WMI для пространства имен. Если пользователь пытается подключиться к пространству имен, к которому ему не разрешен доступ, они получат ошибку 0x80041003. По умолчанию это разрешение включен только для администраторов. Администратор может включить удаленное доступ к определенным пространствам имен WMI для пользователя, не являющегося администратором.

Следующая процедура устанавливает разрешения удаленного включения для пользователь без прав администратора.

Для установки разрешений удаленного включения

Подключитесь к удаленному компьютеру с помощью элемента управления WMI.

Дополнительные сведения о элементе управления WMI см. в разделе «Пространство имен настроек» Безопасность с помощью элемента управления WMI.

На вкладке «Безопасность» выберите пространство имен и нажмите «Безопасность».

Найдите соответствующую учетную запись и установите флажок «Удаленное включение» в Список разрешений.

Подробнее об этой теме здесь

После настроек вы могли запускать WMI-запрос как таковой;

В командной строке;

wmic /node:"<computer>" OS get LastBootUpTime

В PowerShell;

Get-WmiObject Win32_OperatingSystem -ComputerName <computer> | fl LastBootUpTime
1
ответ дан 4 December 2019 в 15:50

Теги

Похожие вопросы