У меня есть приложение, которое выполняет запросы WMI на удаленных хостах. Я пытаюсь определить минимальное количество разрешений безопасности, необходимых для пользователя, используемого для выполнения запросов.
Я определил пользователя с минимальными разрешениями. Я обнаружил, что у этого пользователя достаточно прав для выполнения необходимых запросов, но только если тот же пользователь вошел в систему на удаленном хосте в интерактивном режиме.
Например, если я вхожу на удаленный хост с пользователем, не являющимся администратором (т. е. открываю рабочий стол на удаленном хосте), запрос select * from Win32_Environment
возвращает 2 дополнительные записи, чем если бы я не вошел в систему. 2 записи:
instance of Win32_Environment
{
Caption = "COMP-BAF3244E\\nonadmin\\TEMP";
Description = "COMP-BAF3244E\\nonadmin\\TEMP";
Name = "TEMP";
Status = "OK";
SystemVariable = FALSE;
UserName = "COMP-BAF3244E\\nonadmin";
VariableValue = "%USERPROFILE%\\Local Settings\\Temp";
};
а также
instance of Win32_Environment
{
Caption = "COMP-BAF3244E\\nonadmin\\TMP";
Description = "COMP-BAF3244E\\nonadmin\\TMP";
Name = "TMP";
Status = "OK";
SystemVariable = FALSE;
UserName = "COMP-BAF3244E\\nonadmin";
VariableValue = "%USERPROFILE%\\Local Settings\\Temp";
};
как показано в представлении MOF в инструменте wbemtest. Соединение wbemtest установлено с \\remotehost\root\cimv2
как пользователь nonadmin
.
Как вход на удаленный хост влияет на результаты запроса WMI?
Какие разрешения мне нужно добавить для моего пользователя, чтобы дополнительная информация была доступна, даже если удаленный пользователь не вошел в систему?