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

Как настроить сервер ASP.NET, чтобы определенные файлы были недоступны?

У меня есть несколько файлов на моем сайте ASP.NET, которые используются исключительно приложением. В настоящее время их можно просматривать в браузере, просто используя URL-адрес. Есть ли способ предотвратить это без фактического перемещения файла, или мне нужно переместить файлы в другой каталог, например _private?

Если вы можете установить программное обеспечение на сервере, вы можете установить Microsofts URLScan для IIS, чтобы ограничить, какие файлы будут обслуживать IIS. Однако это будет для всего сервера, а не только для приложения.

Вы также должны иметь возможность делать это на уровне сайта, используя файл web.config, подробности Вот, они предназначены для IIS 5 и .net 1.1, но принцип тот же.

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

ИЛИ

Используйте диспетчер IIS, чтобы создать правило для типа файла (см. Эту веб-страницу: support.microsoft.com/kb/815152)

Файлы конфигурации и данных, предназначенные только для внутреннего использования, следует поместить в папку App_Data:

Папка App_Data

Чтобы повысить безопасность данных, используемых вашим приложением ASP.NET, для приложений ASP.NET была добавлена ​​новая подпапка с именем App_Data. Файлы, хранящиеся в папке App_Data, не возвращаются в ответ на прямые HTTP-запросы, что делает папку App_Data рекомендуемым местом для данных, хранящихся в вашем приложении, включая .mdf (SQL Server Express Edition), .mdb (Microsoft Access) или XML. файлы. Обратите внимание, что при использовании папки App_Data для хранения данных вашего приложения удостоверение вашего приложения имеет разрешения на чтение и запись в папку App_Data.

Что нового в доступе к данным ASP.NET