使用PHP的“runas”命令

时间:2013-09-25 10:59:20

标签: php browser runas

此问题与:Using "runas" command for a program that writes a file (Windows Server 2008)

有关

我尝试从PHP运行runas命令来运行该控制台程序:

<?php
exec("runas /savecred /user:User1 writeTxt.exe");
?>

但是从浏览器调用它时不起作用。但是,它的工作原理是以PHP交互模式(php -a)运行它。是否有任何必须在浏览器中为此设置?

1 个答案:

答案 0 :(得分:0)

如果我使用PHP中的runas(来自浏览器)在没有/savecred参数的情况下调用exec(),则程序writeTxt.exe不会产生任何结果。似乎没有机制让浏览器询问用户runas的密码。

在PHP交互模式下,一旦为runas提供了用户密码,/savecred的使用将导致程序直接执行而无需输入密码。显然,PHP交互模式是与浏览器的PHP不同的会话。由于浏览器没有为runas提供用户密码的机制,/savecred对浏览器会话显然毫无用处。

关于我对IUSR文件夹的system32权限的评论,我使用此代码对其进行了测试:

<?php
exec("whoami");            // whoami.exe is in the system32 folder
?>

浏览器将显示IUSR。所以IUSR有一个阅读&amp;执行对system32文件夹的访问。