База данных MDB — это всего лишь еще один файл на жестком диске, поэтому она столкнется с теми же проблемами с правами доступа к файлам, что и другие файлы. Вопрос означает, что для чтения (и записи, как вы увидите далее в этой книге) файла базы данных, приложение, работающее на этой странице, должно иметь соответствующие разрешения на чтение (и запись) в Windows (на запись) в файл.
Причина, по которой страницы в примерах «просто работают», заключается в том, что вы используете веб-сервер VWD, легкую программу, которая запускается от имени пользователя, запускающего VWD. То есть веб-сервер VWD работает для вас, и вам разрешено чтение и запись файла MDB соединения страницы.
Однако при запуске страницы под IIS ситуация немного сложнее. На этом этапе страница ASP.NET запускается под учетной записью пользователя с определенными ограничениями разрешений. В IIS 5.1 эта учетная запись называется «ASPNET». В IIS 6.0 или более поздней версии эта учетная запись называется «Сетевая служба» и принадлежит группе пользователей Windows под названием IIS_WPG («группа рабочих процессов»). Чтобы использовать базу данных Access в IIS, этим учетным записям необходимо предоставить разрешение на чтение и, при необходимости, разрешение на запись в каталог, содержащий файл MDB.
Чтобы помочь вам создать эти разрешения, VWD предпримет дополнительные шаги и автоматически предоставит это разрешение учетной записи ASPNET или сетевой службы, когда база данных находится в подкаталоге App_Data в корневом каталоге приложения. Если вы используете VWD для разработки страниц на своем компьютере, этому конкретному каталогу всегда будут предоставлены правильные разрешения. Каталог App_Data имеет дополнительные преимущества, такие как предотвращение ответа любых файлов в нем запрашивающему веб-браузеру. Это означает, что, поместив файлы MDB в локальный каталог App_Data приложения, вы можете защитить эти файлы от случайной или преднамеренной загрузки клиентами приложения. Поэтому мы настоятельно рекомендуем сохранить файл MDB в каталог App_Data.
Если вам необходимо сохранить файл MDB в другом месте или вам необходимо вручную указать разрешения для каталога базы данных (например, вы работаете на удаленном веб-сервере), вы можете использовать Windows для настройки разрешений для ASP.NET и/или сети. Сервисный аккаунт.
Если вам нужно вручную установить разрешение, выполните следующие действия:
(1) Используйте проводник Windows, чтобы просмотреть папку, в которой находится файл MDB.
(2) Щелкните правой кнопкой мыши каталог и выберите «Свойства».
(3) Выберите вкладку «Безопасность» и нажмите кнопку «Добавить».
(4) Добавьте локальную учетную запись ASP.NET (IIS 5.1) или группу IIS_WPG (IIS 6).
(5) Нажмите «ОК», затем примените соответствующие разрешения к этому каталогу.
Для получения дополнительной информации см. технический документ под названием «Работа с ASP.NET 1.1 и IIS 6.0», доступный на веб-сайте ASP.NET: http://www.asp.net/faq/AspNetAndIIS6.aspx Этот технический документ.