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

Ограничить доступ к каталогу определенной группой (IIS)

Я запускаю автономный сервер IIS 6 поверх установки Server 2003 (Standard x64). На сервере IIS размещен 1 сайт, которому для предоставления доступа требуется базовая проверка подлинности через HTTPS. Структура сайта следующая:

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

Я создал группу в Computer Management под названием «Загрузчики» и добавил в нее несколько пользователей. Затем я удалил унаследованные разрешения для папки загрузок (через свойства папки NTFS) и добавил разрешения на чтение для группы «Загрузчики» (я предоставил системе и администраторам полный контроль).

Проблема в том, что когда администратор или пользователь, входящий в группу «Загрузчики», аутентифицируются и пытаются захватить файл в папке загрузок, они получают ошибку отказа в доступе. Это не стандартный 403, появляется "Ошибка в / приложении" и говорит, что они не авторизованы web.config.

Я думаю, я немного сбит с толку, потому что корневой сайт - это просто плоский HTML, никаких вещей ASP.NET не происходит, пока они не углубятся в виртуальный сайт REST (или каталог web_svc).

Какие-либо предложения? Я мог бы написать приложение ASP.NET и поместить его в корень и использовать его в качестве «привратника», но я думаю, что IIS должен иметь возможность делать это изначально.

Заранее спасибо!


Редактировать:

При необходимости я могу переместить объект web_svc за пределы корня сайта. На самом деле не пробовал ...

Ваша идея логична, за исключением того, что IIS не олицетворяет вашего пользователя. Он работает либо как учетная запись службы W3C, либо как удостоверение пула приложений (если ваш сайт настроен как приложение). Таким образом, учетная запись службы или удостоверение пула приложений должны иметь доступ к папке, иначе пользователь получит ошибку времени выполнения.

Мой совет - настроить сайт как приложение, а затем использовать файл web.config для ограничения доступа к папке загрузки.

Эта статья должна дать вам информацию, необходимую для начала работы. http://support.microsoft.com/kb/815151