Я добавил и дал группе «Прошедший проверку» права на изменение / чтение / список / запись для одной подпапки внутри папки wwwroot. Не вызовет ли это дыры в безопасности?
Итак, какая альтернатива лучше? Еще лучше, есть ли способ дать разрешение PHP.exe на запись в этот каталог?
Я сделал это для того, чтобы PHP (используя Joom! A CMS) мог писать в определенные каталоги внутри этого подкаталога. Однако просто предоставить IIS_IUSRS или IUSR доступ на запись и изменение не сработало.
В качестве основы предоставление доступа для записи в папку содержимого является потенциально уязвимой дырой. Если кто-то может писать в это место, он может создать (например) неавторизованный или неожиданный код или искажение в этом месте.
PHP - это процесс, который запускается от имени пользователя; процессы не имеют собственной идентичности *, они действуют от имени идентичности, которая их запускает.
Чтобы ответить на вопрос «лучшая альтернатива»: если вашему приложению это нужно, оно нужно вам. Но вы во власти приложения, обеспечивающего свою безопасность (и безопасность любых внутренних опубликованных приложений, скриптов или инструментов).
* угол педантизма: очевидно, что у процессов есть токен процесса; вопрос подразумевал, что можно было предоставить разрешения непосредственно EXE, а не пользователю этого EXE, что невозможно.