【问题标题】:Running cmd as Administrator in PHP在 PHP 中以管理员身份运行 cmd
【发布时间】:2012-03-19 03:44:27
【问题描述】:

有没有办法以 PHP 管理员身份运行 CMD 命令?我正在尝试通过运行 exec("%systemroot%\system32\inetsrv\APPCMD list sites") 使用 appcmd.exe 实用程序在 IIS7 上创建一个网站我收到一条错误消息,提示我没有正确的权限,但如果我 RDP并以管理员身份在 CMD 上运行相同的命令,它工作正常。

更新:

我想要完成的是使用我一直在使用的门户网站在 IIS 7 上自动创建网站,而不是手动将网站添加到服务器

【问题讨论】:

  • 如果 PHP 可以轻松做到这一点,它会从我曾经拥有的每台 Windows 机器上卸载。和 IIS 一样。可能还有 Windows。您在这里谈论的是一个巨大的安全漏洞。如果没有弹出 UAC 框,我(作为管理员!)甚至无法以管理员身份运行应用程序,但是您的 PHP 代码(作为 NetworkService 或其他方式运行)可以吗?嗯。
  • 尝试为您的网站禁用匿名身份验证。这应该要求您登录...使用 AD 凭据登录并查看脚本是否有效。

标签: php iis-7 cmd administrator appcmd


【解决方案1】:

这似乎是一个巨大的安全风险,我建议不要这样做,但为了回答您的问题,您可以更改 appcmd.exe 的权限以允许您的 IIS 用户运行它。不确定是否有任何外部依赖项也需要更改权限。

不过,这似乎不是最好的主意。大多数时候,程序需要管理员权限是有原因的。

【讨论】:

    【解决方案2】:

    您可以这样做的一种方法是用另一种语言编写Windows Service 以公开您需要的结果,然后通过其他端口在本地与其通信。然后安装服务并以管理员身份运行。

    【讨论】:

      猜你喜欢
      • 2019-04-14
      • 1970-01-01
      • 2017-05-18
      • 1970-01-01
      • 1970-01-01
      • 2015-10-09
      • 1970-01-01
      • 2020-06-23
      • 1970-01-01
      相关资源
      最近更新 更多