0

当我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();

从上面的场景来看,

  • Web 应用程序在受限帐户下运行,但它执行
  • 我不知道的默认帐户下的外部应用程序。

在较低特权帐户下运行的应用程序可以启动在管理帐户下执行另一个应用程序的进程吗?

4

2 回答 2

1

为什么需要管理员权限才能运行pdflatex?这是一个标准的用户程序,除了从它可以写入的目录运行之外,不需要任何特殊权限。

于 2011-03-09T04:08:05.707 回答
1

不,如果不正确请求 UAC 提升(提示输入管理用户名和密码),较低权限的应用程序无法启动提升的应用程序。如果您可以从访问权限较低的应用程序中提升衍生应用程序,那将是一个主要的安全漏洞。

于 2011-03-09T04:12:32.333 回答