Разрешения для приложений, запускаемых службами, работающими как локальная система - PullRequest
0 голосов
/ 10 сентября 2018

У нас работает устаревшая служба, которая отвечает за мониторинг другой службы, но также запускает консольное приложение (написанное на C), которое продолжает работать в фоновом режиме. Если мы запускаем консольное приложение из командной строки cmd, оно работает нормально. Если мы также запустим службу под учетной записью сетевой службы, она также нормально запустит консольное приложение, но в этом случае не сможет запустить другую службу.

Таким образом, поскольку служба должна отслеживать (запускать / останавливать) другую службу, ее необходимо запустить под учетной записью локальной системы, чтобы получить необходимые привилегии, но проблема в том, что консольное приложение, запущенное этой службой, не может прочитать свою конфигурацию из папка appdata.

Я вижу, что консольное приложение получает папку APPDATA как C:\Windows\System32\config\systemprofile\AppData\Roaming, но приложение заявляет, что файл конфигурации внутри этой папки не может быть найден, поэтому оно закрывается. Когда я запускаю его из учетной записи обычного пользователя, он переходит в папку appdata этого пользователя и работает правильно. Я даже пытался дать группе Users дополнительные разрешения для ее папки внутри папки systemprofile\AppData\Roaming (что не имеет смысла, поскольку приложение работает как локальная система), но это не помогло.

  1. Каков наилучший способ заставить это консольное приложение считывать настройки из папки appdata локальной системы?

  2. Или, в качестве альтернативы, можно ли предоставить этому единственному разрешению службы запуск других служб без запуска его как локальной системы?

1 Ответ

0 голосов
/ 10 сентября 2018

Если мы запускаем консольное приложение из командной строки cmd, оно работает нормально.

Это означает, что учетная запись, в которую вы вошли, обладает достаточными правами для выполнения всего, что вам нужно. Укажите эту учетную запись на вкладке «Вход в систему», и все будет хорошо!

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...