Использование команды runas из PHP
Этот вопрос связан с: использованием команды "runas" для программы, которая записывает файл (Windows Server 2008)
Я пытался запустить runas
команда из PHP для запуска этой консольной программы:
<?php
exec("runas /savecred /user:User1 writeTxt.exe");
?>
Но это не работает при вызове из браузера. Тем не менее, он работает, запустив его в интерактивном режиме PHP (php -a
). Что-нибудь должно быть установлено в браузере для этого?
1 ответ
Если я позвоню runas
без /savecred
использование параметров exec()
в PHP (из браузера) программа writeTxt.exe
не дает никакого результата. Похоже, что в браузере нет механизма для запроса пароля пользователя для runas
,
В интерактивном режиме PHP, после того как пароль пользователя был предоставлен для runas
, использование /savecred
приведет к непосредственному выполнению программы без запроса пароля. Очевидно, что интерактивный режим PHP отличается от сеанса браузера PHP. Поскольку браузер не имеет механизма запроса пароля пользователя для runas
, /savecred
очевидно, бесполезно для сеанса браузера.
Что касается моего комментария о IUSR
разрешение на system32
папку, я проверил это с помощью этого кода:
<?php
exec("whoami"); // whoami.exe is in the system32 folder
?>
Браузер отобразит IUSR
, Так IUSR
имеет доступ на чтение и выполнение к system32
папка.