2011-01-07 3 views
3

Файл базы данных Microsoft Access находится в папке APP_DATA. мой сервер - Windows 2003, и мне нравится знать, как наилучшим образом защитить этот файл.Безопасность папки APP_Data в ASP.NET

так какой из них безопаснее?

./wwwroot/App_data/Database.mdb

или

./db/Database.mdb

ответ

0

посетители не можете скачать файл MDB, если MDB файл в папке App_Data. Но посетители могут загрузить ваш файл mdb, если файл mdb в папке db.

Если вы хотите поместить свой файл mdb в папку db, вам необходимо установить разрешение безопасности для этой папки.

+0

db папка не внутри wwwroot, поэтому я думаю, что они не могут ее загрузить. – Reza

+0

Да, вы правы ... Извините. От MSDN: Папка App_Data Содержит базы данных Microsoft Access (файлы .mdb), файлы XML и другие данные, хранящиеся в локальных файлах. Учетная запись пользователя, используемая для запуска приложения (например, локальная учетная запись ASPNET), имеет права на чтение, запись и создание файлов в этой папке. Различные функции приложения ASP.NET, такие как поставщики членства и роли, а также средство администрирования веб-сайта, настроены на работу с папкой App_Data. http://msdn.microsoft.com/en-us/library/f7fb46ye(v=vs.80).aspx – ogun

+0

Я думаю, что я должен добавить это в web.config Reza

5

Оба метода являются безопасными в том смысле, что файл не будет обслуживаться удаленному клиенту (если только вы не создадите виртуальный путь к папке db. Файлы, не обслуживаемые с сайта, регулируются секцией httpHandlers в Интернете. конфигурации:

<add path="*.mdb" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" /> 

Любой тип файла добавлен здесь с типом = HttpForbiddenHandler не будет подан

Где поместить файл Access это вопрос вкуса и доступа Если вы выразились за пределами вашего сайта, т.е... в папке db вам нужно будет установить разрешения для учетной записи приложения, которое вы используете для своего сайта/приложения. Размещение его в App_Data папке, в которую вы хотите перейти. Кроме того, если вы находитесь в среде хостинга, вы не сможете разместить файл Access вне папки сайта.

Мои 2 цента: перейдите в папку App_Data.

.håkan

Смежные вопросы