Установите разрешения для объекта реестра с помощью j-interop
Доступ к WMI с использованием DCOM требует, чтобы у пользователя были права на:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ CLSID {76A64158-CB41-11D1-8B02-00600806D9B6}
К сожалению, Windows 7 и Server 2008 имеют такую настройку, поэтому группа администраторов не имеет полного контроля! TrustedInstaller является владельцем и имеет полный контроль.
Мне нужно сделать это через J-Interop
Взять на себя ответственность за объект реестра и все подобъекты (в группу "Администраторы"). Я полагаю, что это автоматически дает полное право доступа s.
Любая помощь будет высоко ценится
2 ответа
Я не думаю, что вы можете сделать это через J-Interop. Это можно сделать, изменив владельца файла реестра на группу "Администратор" или "Распределенные пользователи COM" или "Пользователи системного монитора", а затем добавив привилегии "Полный доступ" или "Чтение" в группу "Администратор" и "Пользователи" над папкой.
Я очень заинтересован в программном решении этого вопроса. Пока что я могу сделать это только вручную, войдя в нужную систему и щелкнув правой кнопкой мыши на "Разрешения" в regedit.
Эти ссылки выглядят актуально:
- /questions/22140295/kak-zapisat-v-klyuch-reestra-prinadlezhaschij-trustedinstaller/22140316#22140316
- TrustedInstaller предотвращает запись реестра в HKCR \ DirectShow \ MediaObjects \ Categories
- http://www.opennms.org/wiki/WmiConfiguration
Что касается второй ссылки, ответ предполагает, что Microsoft считает, что некоторые разделы реестра должны быть "защищены", поскольку принадлежат пользователю TrustedInstaller, а другие - нет. В таком случае мне интересно, не существует ли другого законного способа заставить WMI работать удаленно.