Назад | Перейти на главную страницу

Сетевые службы Запись / изменение разрешений для папки Inetpub Возможные проблемы безопасности

У меня есть веб-приложение asp.net, которое работает как система управления контентом для веб-сайта.

Первоначально он был на сервере IIS6. Однако недавно веб-приложение было перемещено на сервер II7. После переезда моя система CMS перестала работать, так как я получил сообщение об ошибке:

Доступ к пути 'C: \ inetpub \ SITEFOLDER \ FILENAME' запрещен.

Каждый раз, когда я сохраняю страницу в своей системе CMS, мне нужно записать в файл aspx на сервере, а также обновить файл web.sitemap на сервере.

Я сравнил права доступа к файлам между двумя серверами и заметил, что старый сервер IIS6 имел права на запись / изменение в папке inetpub для пользователя «Сетевые службы», которые переносились на все файлы сайта на сервере.

На новом сервере нет «сетевых служб» с разрешениями на запись / изменение, установленными для папки inetpub. Это, очевидно, причина, по которой моя система CMS не работает на новом сервере.

Решением, конечно же, является установка разрешений на запись / изменение для папки Inetpub на новом сервере, чтобы у ASP.NET были соответствующие разрешения для записи и изменения любого файла на сайте.

Мой вопрос: является ли это исключительным решением для производственного веб-сервера. Есть ли какие-либо дыры в безопасности, которые я открываю, позволяя сетевым службам иметь разрешения на запись / изменение в папке inetpub? Я знаю, что предоставление IUSER разрешений на запись / изменение для всей папки inetpub может привести к проблемам с безопасностью, и вы должны быть осторожны, какие файлы имеют разрешения на запись для IUSER, я просто не знал, применяется ли то же правило к «Сети» Услуги "пользователь.

по умолчанию в IIS 7.5 используется идентификатор пула приложений (также известный как i_AppPoolName). Я бы НЕ предоставлял разрешения на запись и предоставлял только папки, необходимые для поддержки вашего приложения. Сетевая служба была учетной записью по умолчанию в IIS 6 и не была лучшей учетной записью. MS внесла изменения в 7.x.

Обратите внимание, что имя пула приложений по умолчанию следует изменить на то, что у вас есть. ICACLS C: \ inetpub \ wwwroot / grant "IIS AppPool \ DefaultAppPool" :( M)

Вы можете сделать это из графического интерфейса в r2 / iis 7.5

Другой вариант - предоставить изменение группы IIS_IUSRS, указанная выше командная строка пула приложений является наиболее безопасной. Я бы просто не разрешил изменять все папки. Лично я использую Perms-архитектуру IIS_IUSRS, поскольку мои серверы не являются серверами общего хостинга.