У меня новая конфигурация Windows 2008 R2, и я только что опубликовал для нее веб-сайт. Я установил его в пул приложений, который использует это удостоверение: ApplicationPoolIdentity, и поигрался с разрешениями NTFS, предоставляя доступ для чтения IIS_IUSRS, и он все еще позволял веб-сайту создавать файлы. Поэтому я попытался удалить даже их доступ для чтения, и они все еще могут открывать страницы на сайте.
Что мне здесь не хватает? Как я могу заблокировать разрешения в Windows 2008 (IIS 7.5), чтобы пользователи могли писать только в определенные папки и только читать определенные папки?
Я действительно не хочу создавать локальную учетную запись и давать пулу приложений эту учетную запись для использования ...
Никогда не нужно предоставлять IIS_IUSRS
групповые разрешения для ваших общедоступных веб-папок. Вы должны предоставлять права на удостоверение личности, под которым работает сайт, в этом случае ApplicationPoolIdentity
.
Я подозреваю, что проблема в том, что Users
группа имеет право записи в эти папки. An ApplicationPoolIdentity
аккаунт всегда является членом Users
группа.
Отключите разрешения для ваших веб-папок, чтобы просто SYSTEM
и Administrators
затем установите необходимые разрешения, необходимые для вашего сайта, на ApplicationPoolIdentity
учетная запись.
Чтобы установить разрешения, вы можете использовать ICACLS.EXE
или графический интерфейс. Например, на моем компьютере установлен сайт Nerd Dinner MVC:
`ICACLS c:\NerdDinner /grant "IIS AppPool\NerdDinner":(CI)(OI)(R)
Через проводник:
Вы не сможете просматривать ApplicationPoolIdentity
с помощью графического интерфейса пользователя или диспетчера пользователей, поскольку это синтетическая учетная запись.