File-Manager unter Netscape mittels Java

Im Rahmen des WWW-Seminars hatten wir die Aufgabe, ein Java-Applet zu schreiben, das File-Operationen unter Netscape ermöglichen sollte. Der Browser sollte also auch als lokaler File-Manager dienen. Dabei haben wir zunächst ein normales Java-Programm geschrieben, das Files managen kann. Als wir es dann aber zum Applet umfunktionieren wollten, lief das Programm plötzlich nicht mehr. Den Grund fanden wir in dem Buch "Exploring Java": (Übersetzung):

Applets und Files
Aus Sicherheitsgründen ist es Applets nicht erlaubt, in Verzweigungen des Filesystems zu schreiben oder lesen. Die Fähigkeit eines Applets Lese- oder Schreibvorgänge durchzuführen ist unter der Kontrolle des SecurityManager-Objekts, das von der Anwendung, unter der das Applet laufen soll, wie z.B. der Appletviewer oder ein Java-fähiger Browser, installiert wurde. Jeder File-Zugriff muß zunächst den Security-Manager passieren. Sun's Hotjava-Web-Browser beispielsweise erlaubt es dem Benutzer, in einer Zugangs-Kontroll Liste das Zugriffsrecht auf spezifische Files einzutragen. Der Netscape Navigator, andererseits, erlaubt Applets zur Zeit keinen Zugriff auf das Filesystem.

Weiterhin haben wir dem Autor des Buches "Exploring Java" Pat Niemeyer eine Mail geschrieben, auf die er auch direkt geantwortet hat. Den kurzen Schriftwechsel in englischer Sprache finden Sie hier.

Die Sicherheitsbeschränkungen für Applets erscheinen auch notwendig, wenn man bedenkt, daß ein Java-Applet, lokal ausgeführt wird. Schaut man sich beispielsweise eine Web-Page an, in die ein Applet eingebunden ist, so wird das Java-Programm auf dem Rechner ausgeführt, an dem man gerade sitzt. Somit wäre eine Zugriffsberechtigung auf das lokale Filesystem gleichbedeutend mit einer Zugriffsberechtigung auf fremde Fileszsteme, da Applets immer lokal ausgeführt werden.