Isolated Storage
Eintrag zuletzt aktualisiert am: 05.01.2009
Isolated Storage ist Teil des Sicherheitssystem im
.NET Framework. Isolated Storage ist Bereich einer Festplatte, der nur für eine bestimmte Anwendung zur Verfügung steht. Isolated Storage können im Gegensatz zu "normalen"
Dateisystemzugriffen auch heruntergeladene Anwendungen mit niedrigen CA-Rechten nutzen.
Nutzung über den Namensraum
System.IO.IsolatedStorage.
Hintergründe
Viele Anwendung speichert Informationen im
Dateisystem. Dabei werden spezifische Einstellungen oft in einer eigenen
Konfigurationsdatei im „persönlichen Verzeichnis“ des jeweiligen Benutzers abgelegt. Handelt es sich dabei um eine Anwendung, die auf das lokale System heruntergeladen und ausgeführt wird, ist der
Dateisystemzugriff im Standard verboten und eine entsprechende Anpassung
CAS sehr komplex - schließlich sollte die Anwendung aus Sicherheitsgründen nicht „wild“ auf das
Dateisystem zugreifen. Es müsste eine Richtlinie für jeden Benutzer mit den entsprechenden Verzeichnispfaden erstellt werden. Oder schlimmer noch: Bei jeder späteren Änderung von Verzeichnissen müssten
CAS-Richtlinien nachträglich angepasst werden.
Um diesem Diemma zu entgehen, können kann jede .NET-Anwendung Daten in einer Art virtuellem
Dateisystem, dem sogenannten Isolated Storage, ablegen und später von dort wieder laden. Der Speicher verschiedener .NET-Anwendungen ist voneinander isoliert. Theoretisch kann eine Anwendung im Isolated Storage Programmcode ablegen. Windows verhindert aber, dass dieser ausgeführt würde.
Beispiel:
Dim store as IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForDomain()
Dim stream as new IsolatedStorageFile
Stream("daten.xml", FileMode.Create, store)
ds.Write
XML(stream)