Безопасность папки APP_Data в ASP.NET
Мой файл Microsoft Access DB находится в папке APP_DATA. Мой сервер - Windows 2003, и мне нравится знать, как лучше всего защитить этот файл.
так какой из них безопаснее?
./wwwroot/App_data/Database.mdb
или же
./db/Database.mdb
2 ответа
Оба метода безопасны в том смысле, что файл не будет доставлен удаленному клиенту (если вы не создадите виртуальный путь к папке db. Файлы, не обслуживаемые с сайта, регулируются разделом httpHandlers в web.config:
<add path="*.mdb" verb="*" type="System.Web.HttpForbiddenHandler" validate="True" />
Любой тип файла, добавленный здесь с type=HttpForbiddenHandler, не будет обслуживаться.
Где разместить файл Access - дело вкуса и доступа. Если вы разместите его за пределами своего сайта, т.е. в папке db, вам нужно будет установить разрешения для учетной записи приложения, которую вы используете для своего сайта / приложения. Поместив его в папку App_Data, вы готовы к работе. Кроме того, если вы находитесь в среде хостинга, вы не сможете разместить свой файл Access вне папки сайта.
Мои 2 цента: перейдите в папку App_Data.
.håkan
Посетители не могут загрузить ваш MDB-файл, если MDB-файл находится в папке App_Data. Но посетители могут скачать ваш файл MDB, если файл MDB находится в папке DB.
Если вы хотите поместить свой mdb-файл в папку db, вам нужно установить разрешение securty для этой папки.