Bei einer MDB-Datenbank handelt es sich lediglich um eine weitere Datei auf der Festplatte, daher treten bei ihr die gleichen Probleme bei der Dateizugriffsberechtigung auf wie bei anderen Dateien. Die Frage bedeutet, dass zum Lesen (und Schreiben, wie Sie später in diesem Buch sehen werden) eine Datenbankdatei die auf der Seite ausgeführte Anwendung über die entsprechenden Berechtigungen zum Lesen (und Schreiben) in Windows (Schreiben) verfügen muss die Datei.
Der Grund dafür, dass die Seiten in den Beispielen bisher „einfach funktionieren“, ist, dass Sie den VWD-Webserver verwenden, ein schlankes Programm, das unter der Identität des Benutzers ausgeführt wird, der VWD ausführt. Das heißt, der VWD-Webserver läuft für Sie und Sie dürfen die MDB-Datei der Seitenverbindung lesen und schreiben.
Wenn die Seite jedoch unter IIS ausgeführt wird, ist die Situation etwas komplizierter. Zu diesem Zeitpunkt wird die ASP.NET-Seite unter der Identität eines Benutzerkontos mit bestimmten Berechtigungseinschränkungen ausgeführt. Unter IIS 5.1 lautet dieses Konto „ASPNET“. Unter IIS 6.0 oder höher heißt dieses Konto „Netzwerkdienst“ und gehört zu einer Windows-Benutzergruppe namens IIS_WPG („Arbeitsprozessgruppe“). Um eine Access-Datenbank unter IIS nutzen zu können, müssen diesen Konten Leserechte und ggf. Schreibrechte für das Verzeichnis mit der MDB-Datei erteilt werden.
Um Sie bei der Erstellung dieser Berechtigungen zu unterstützen, ergreift VWD zusätzliche Schritte und gewährt diese Berechtigung automatisch dem ASPNET- oder Netzwerkdienstkonto, wenn sich die Datenbank im Unterverzeichnis App_Data im Stammverzeichnis der Anwendung befindet. Wenn Sie VWD zum Entwickeln von Seiten auf Ihrem Computer verwenden, werden diesem bestimmten Verzeichnis immer die richtigen Berechtigungen gewährt. Das App_Data-Verzeichnis bietet zusätzliche Vorteile, z. B. verhindert es, dass darin enthaltene Dateien auf den anfragenden Webbrowser reagieren. Das bedeutet, dass Sie durch das Platzieren der MDB-Dateien im lokalen App_Data-Verzeichnis der Anwendung diese Dateien davor schützen können, versehentlich oder absichtlich von den Clients der Anwendung heruntergeladen zu werden. Wir empfehlen daher dringend, die MDB-Datei im App_Data-Verzeichnis zu speichern.
Wenn Sie die MDB-Datei an einem anderen Ort speichern müssen oder Berechtigungen für das Datenbankverzeichnis manuell angeben müssen (z. B. wenn Sie auf einem Remote-Webserver arbeiten), können Sie Windows verwenden, um Berechtigungen für ASP.NET und/oder Netzwerk zu konfigurieren Dienstkonto.
Wenn Sie die Berechtigung manuell festlegen müssen, führen Sie bitte die folgenden Schritte aus:
(1) Durchsuchen Sie mit dem Windows Explorer den Ordner, in dem sich die MDB-Datei befindet.
(2) Klicken Sie mit der rechten Maustaste auf das Verzeichnis und wählen Sie Eigenschaften.
(3) Wählen Sie die Registerkarte „Sicherheit“ und klicken Sie auf die Schaltfläche „Hinzufügen“.
(4) Fügen Sie ein lokales ASP.NET-Konto (IIS 5.1) oder eine IIS_WPG-Gruppe (IIS 6) hinzu.
(5) Klicken Sie auf OK; wenden Sie dann die entsprechenden Berechtigungen auf dieses Verzeichnis an.
Weitere Informationen finden Sie im Whitepaper mit dem Titel „Ausführen von ASP.NET 1.1 und IIS 6.0“, das auf der ASP.NET-Website verfügbar ist: http://www.asp.net/faq/AspNetAndIIS6.aspx Dieses Whitepaper.