Предоставление разрешения "Локальная система" папке установки в Advanced Installer
У меня есть проект "Advanced Installer", который я пытаюсь использовать для установки моей службы Windows "TopShelf", которую я создал.
Я нашел место в Advanced Installer для предоставления разрешений для папки установки, но я не вижу способа предоставления разрешений учетной записи "Local System".
Вручную это можно сделать, перейдя к параметру безопасности в свойствах папки и добавив пользователя с тем же именем, что и имя компьютера, но заканчивая $
, Например MyNiceComputer$
, (О, и вы должны выбрать опцию "Компьютеры" в types
площадь.)
Но в Advanced Installer нет возможности сделать все это. Если я сделаю один как MyNiceComputer$
, он просто делает пустую запись на вкладке безопасности. (Нет разрешений на это, хотя я настроен на полный контроль.)
Кому-нибудь когда-нибудь нужно было делать это с помощью Advanced Installer?
Дополнительные детали:
Я устанавливаю приложение, которое работает как служба Windows. (Это консольное приложение, созданное с помощью TopShelf).
Политика нашей компании заключается в установке всех наших приложений в папку, которая выглядит следующим образом:
C: \ OurCompanyApps \ MyApp
Когда я создаю установщик, он работает нормально, но когда я запускаю службу Windows, я получаю следующую ошибку:
Windows не может запустить службу MyApp на локальном компьютере
Ошибка 5: доступ запрещен.
Но когда я предоставляю доступ к локальной системе (предоставляя полный доступ к myNiceComputer$
в папке MyApp), то эта ошибка исчезает, и приложение работает нормально. Из того, что я прочитал, это потому, что приложение работает как локальная система.
Кажется странным, что ему нужен полный контроль, но он не работает без него. (Но, насколько я вижу, содержимое папки не изменилось).
@ Богдан Митрахе, кажется, указывает на то, что предоставление разрешений локальной системе невозможно с помощью расширенного установщика. Это полезно знать (поэтому я не трачу больше времени на поиски). Я, вероятно, попрошу у системных администраторов выделенную системную учетную запись для запуска моей службы как. Не идеально, но это послужит обходным решением.
1 ответ
Итак, в один из моих "менее тонких" моментов отладки я перепутал две разные вещи.
Там также отсутствовал файл (мой конфигурационный файл). Я восстановил это и изменил разрешения одновременно. Но потом я забыл вернуться и проверить, какой из них был на самом деле. (Я знаю, не очень хорошая отладка.)
Итак, в доступе отказано ошибка произошла из-за отсутствия файла.