App_Data - каталог данных веб-приложений. Насколько это безопасно?

Во многих местах в документации msdn вы можете найти ссылки на каталог App_Data. Например здесь мы можем прочитать:

Чтобы повысить безопасность при использовании локального файла данных в приложении ASP.NET, вы должны сохранить файл данных в каталоге App_Data.

и

Файлы, хранящиеся в каталоге App_Data не будет обслуживаться в Интернете.

Я не мог найти прямую ссылку, которая указывала бы, как гарантируется эта безопасность. Существуют ли какие-либо настройки IIS и т.д., Что я должен следить за тем, чтобы файлы, которые мы помещали в каталог App_Data, внезапно не стали доступны для всех.

2 ответа

Файлы защищены запрещенным обработчиком файлов. Это безопасно, пока все работает. Есть возможности, с которыми могут работать обработчики ASP.NET, оставляя только IIS. В этих случаях ваши файлы web.config и aspx файлы будут передаваться в виде текстовых файлов.

Если данные не очень чувствительны, это хорошее место для хранения данных. Если у вас есть высокочувствительные данные, сохраните их на другой машине.

Изменить: Дополнительная информация Подробнее о запрещенных обработчиках файлов вы можете прочитать здесь http://msdn.microsoft.com/en-us/library/bya7fh0a.aspx. При прокрутке вы заметите, что в файле "root web.config" есть запись в mdfs. Обычно вы можете найти этот файл на своем компьютере в C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG

Я не мог найти слишком много информации о том, чтобы сбить asp.net, оставив iis, но если вы используете Google для таких терминов, как "запрос на загрузку aspx" или что-то в этом роде, вы можете найти отчеты о людях, имеющих проблемы ( обычно asp.net не настроен должным образом), что позволит использовать эксплойт. Я не видел, чтобы это случалось очень много, но это возможно.


Сверху моей головы, я бы предположил, что они защищены так же, как и файлы .config. Это в основном означает, что обработчик ASP.NET для этих элементов возвращает сообщение "Этот тип страницы не обслуживается". Он может вернуть ошибку 404. Самый безопасный способ - не хранить там свою базу данных.

licensed under cc by-sa 3.0 with attribution.