5

У меня есть следующий сценарий:

  • Я локальный администратор на моем компьютере с Windows 7 Enterprise и включенным UAC
  • Компьютер не находится в домене и не находится под групповой политикой
  • Я запускаю какую-то программу без прав администратора
  • Эта программа иногда должна управлять локально установленной службой Windows (с опциями ручного запуска)
  • Без запуска исходной программы от имени администратора или без отключения контроля учетных записей UAC служба Windows не работает.

Как я могу предоставить разрешения моей учетной записи для управления этой конкретной службой без запуска с повышенными привилегиями или отключения UAC?

1 ответ1

4

С сервисами, как и с каждым объектом Windows, связан ACL, который может быть изменен для предоставления вам доступа.

Насколько я знаю, нет никакого официального пользовательского интерфейса для управления ACL сервисов, поэтому у вас есть два варианта:

  1. Загрузите Process Explorer. Запустите свой сервис (ProcExp показывает только запущенные сервисы). В ProcExp дважды щелкните по процессу для Сервиса (или щелкните правой кнопкой мыши и выберите Свойства). Нажмите на вкладку "Услуги". Обычно ваша программа запускается конкретным пользователем - добавьте этого пользователя. Хит Продвинутый. Разрешения, которыми вы можете управлять, включают остановку / запуск этой службы и отправку ей определенных команд.

    Process Hacker похож, но может также управлять остановленными сервисами.

  2. sc showsd , изучает синтаксис ACE и права доступа , редактирует дескриптор безопасности, передает его обратно в sc setsd .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .