Dateispeicherverwaltung
Die Dokumentdateien werden vom IQ-Modul QStorageServer verwaltet, das auf dem IQ-Server eingebunden ist. In der Konfiguration wird zu diesem Zweck ein Verzeichnis auf dem IQ-Server festgelegt, in dem die Dateien automatisch von regisafe gespeichert werden (z.B.: Verzeichnis = IQDaten:Storage).
- Die Clients benötigen keinen direkten Zugriff auf die Dateien - und sollten aus Datensicherheitsgründen auch keinen direkten Zugriff erhalten.
Das in der Konfiguration angegebene Basis-Verzeichnis wird automatisch in 36 Unterverzeichnisse (0-9, a-z) untergliedert.
Ziel dieser Art der Ablage ist es, nur eine begrenzte Zahl von Dateien im selben Verzeichnis zu halten.
Die 36 Unterverzeichnisse werden nach Bedarf ebenfalls untergliedert, wenn eine bestimmte Anzahl an Dateien pro Verzeichnis überschritten wird.
Für die einzelnen Dokumentdateien gilt:
- Die Dateien werden in komprimierter Form (ZIP) mit einem in der Konfiguration wählbaren Komprimierungsfaktor gespeichert. Die Komprimierung findet bereits am Client vor der Übertragung an den Server statt.
- Die Endung der Dateien ist QStorage – sofern die Verschlüsselung nicht aktiviert ist, können diese Dateien jedoch problemlos auch mit einem Komprimierungsprogramm geöffnet werden.
- Pro Schriftstück und Version des Schriftstücks wird je eine QStorage-Datei erstellt. Falls das Schriftstück aus mehreren Dateien besteht, werden diese Dateien gemeinsam in einer QStorage-Datei gehalten.
- Der Dateiname ist jeweils aufgebaut in der Form: <ServerID>.<ObjektID>.<Version>.<QStorage>
- Dateiverschlüsselung:
In der Konfiguration kann festgelegt werden, dass die Dateien verschlüsselt abgelegt werden (Schlüssel "AutoPasswortSchutz"). Als Verschlüsselungsverfahren kommt AES256 zum Einsatz.
Jede Datei wird mit einem anderen Schlüssel verschlüsselt. Die Erzeugung des Schlüssels geschieht nach einem internen Algorithmus.
Dadurch können solche Dateien nur noch mit regisafe geöffnet werden und eine Manipulation der Dateien oder ein unberechtigter Zugriff ist weitgehend ausgeschlossen.
Am Client wird im Temp-Verzeichnis automatisch ein Verzeichnis Storage angelegt, das wiederum in Unterverzeichnisse von 1 bis 64 unterteilt ist. Jedes dieser Verzeichnisse dient als ein Cache-Verzeichnis für ein Verzeichnis im Dateispeicher des IQ-Servers, die Anzahl ist konfigurierbar (Schlüssel "CacheAnzahl").
Wird ein Schriftstück geöffnet oder im Viewer angezeigt, wird die komprimierte QStorage-Datei vom Server angefordert und die Dateien in einem der Cache-Verzeichnisse abgelegt.
Die Bearbeitung der Dateien geschieht dann lokal in diesem Cache-Verzeichnis. Wird das Schriftstück später erneut benötigt, wird die Version des Cache-Verzeichnisses geöffnet, sofern eine Prüfung ergibt, dass auf dem IQ-Server keine neuere Version vorliegt.
Wenn regisafe beim Öffnen einer Datei feststellt, dass sich die lokale Kopie dieser Datei von der am Server gespeicherten Fassung unterscheidet, wird die Datei neu vom Server geholt. Dabei wird die lokale Fassung aus dem Verzeichnis Storage in ein neues Unterverzeichnis StorageSalvage gerettet. Dies gilt sowohl im Standardumfang als auch bei Einsatz des Moduls Fälschungssicherer Dateispeicher.
- Die Nutzung der Cache-Verzeichnisse geschieht nach dem LRU-Prinzip (LRU = Least Recently Used, frei übersetzt: "die am längsten nicht verwendeten fliegen zuerst wieder raus").
Nachdem eine Datei geändert und im Anwendungsprogramm geschlossen wurde, wird die Datei automatisch komprimiert und an den Server
übertragen.
Temporäre Dateien werden hierbei ignoriert und nicht an den Server übertragen. Als "temporäre Dateien" gelten alle Dateien, die mit einer Tilde (~) beginnen und/oder die Dateinamenserweiterung TMP besitzen.
Ebenso nicht gespeichert wird "überflüssiger Datenmüll" mit einem Unterstrich am Ende des Dateinamens; davon ausgenommen sind jedoch Dateien, die in regisafe geöffnet und bearbeitet werden und automatisch mit einem Unterstrich am Ende des Dateinamens gespeichert werden.
Hintergrund: Damit von regisafe verwaltete Dokumentdateien nicht ohne Weiteres außerhalb von regisafe bearbeitet werden können, wird im lokalen Cache-Verzeichnis jeweils ein Unterstrich an die Endung des Dateinamens angehängt.
- regisafe speichert eine interne Tabelle aller geöffneten Dateien im Temp-Verzeichnis (Datei ~OrgaManagerFileWatch.TMP), damit auch bei einem Absturz des regisafe keine Änderungen verloren gehen.