Может ли приложение, запущенное под менее привилегированной учетной записью, запускать процесс, выполняющий другое приложение под учетной записью администратора? - PullRequest
0 голосов
/ 09 марта 2011

Я вошел в систему как администратор, когда я установил приложение с именем pdflatex.exe на моем сервере.Это приложение работает как конвертер из входного файла LaTeX в файл PDF.

Я размещаю приложение Asp.net MVC 3, работающее под идентификатором пула приложений с Load User Profile = True.

Код Asp.net MVC 3 содержит код, который выполняет pdflatex.exe с использованием экземпляра System.Diagnostic.Process следующим образом:

        Process p = new Process();

        p.EnableRaisingEvents = true;
        p.Exited += new EventHandler(p_Exited);

        p.StartInfo.Arguments = "-interaction=nonstopmode " + inputpath;
        p.StartInfo.WorkingDirectory = @"c:\mydomain.com\working";

        p.StartInfo.UseShellExecute = false;
        p.StartInfo.FileName = "pdflatex.exe";

        p.Start();
        p.WaitForExit();

Из приведенного выше сценария

  • веб-приложение работает с ограниченной учетной записью, но оно выполняет
  • внешнее приложение с учетной записью по умолчанию, которую я не знаю.

Может ли приложение работать подменее привилегированная учетная запись запускает процесс, выполняющий другое приложение под учетной записью администратора?

Ответы [ 2 ]

1 голос
/ 09 марта 2011

Нет, приложение с более низким уровнем привилегий не может запустить приложение с повышенными правами без надлежащего запроса повышения прав UAC (которое запрашивает административное имя пользователя и пароль).Если бы вы могли повысить порожденное приложение из приложения с более низким доступом, это было бы серьезным пробелом в безопасности.

1 голос
/ 09 марта 2011

Зачем вам нужен доступ администратора для запуска pdflatex?Это стандартная пользовательская программа, которая не должна требовать каких-либо особых привилегий, кроме запуска из каталога, в который она может записать.

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