2012-02-29 2 views
-1

Есть ли способ запустить команду CMD в качестве администратора с PHP? Я пытаюсь создать веб-сайт на IIS7 с помощью утилиты appcmd.exe, выполнив exec («% systemroot% \ system32 \ inetsrv \ APPCMD список сайтов»). Я получаю сообщение о том, что у меня нет правильных разрешений, но если я RDP и запускать ту же команду в CMD, что и администратор, он отлично работает.Запуск cmd as Administrator в PHP

Update:

Что я пытаюсь выполнить, чтобы автоматизировать создание веб-сайта на IIS 7 с помощью веб-портала, который я работал на против добавления веб-сайтов на сервер вручную

+2

Если PHP может сделать это легко, он будет удален с каждой машины Windows, которой я когда-либо владел. Как и IIS. И, возможно, Windows. Вы говорите о * огромной дыре в безопасности здесь. Я (как admin!) Не может даже запускать приложение в качестве администратора, не открывая окно UAC, но ваш PHP-код (работает как NetworkService или что-то еще) может? Nu-э-э. – cHao

+0

Попробуйте отключить анонимную аутентификацию для своего сайта. Это должно потребовать, чтобы вы вошли в систему ... с использованием учетных данных AD и посмотрели, работает ли скрипт. –

ответ

0

Это кажется огромный риск для безопасности, и я бы посоветовал это сделать, но, чтобы ответить на ваш вопрос, вы можете изменить разрешения на appcmd.exe, чтобы позволить вашему пользователю IIS запустить его. Не уверен, есть ли какие-либо внешние зависимости, которые также нуждаются в изменениях разрешения.

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

0

Один из способов сделать это - написать Windows Service на другом языке, чтобы предоставить результаты, которые вам нужны, а затем связаться с ними локально через какой-либо другой порт. Затем установите службу и запустите ее как администратор.

Смежные вопросы