Datenbanken
Betrifft iSign 8.0
Stand: 27.06.2025
Bitte beachten Sie, dass diese Funktion nicht Teil der Standardinstallation ist. Bei Bedarf kann der Support dafür optional bereitgestellt werden.
Einleitung
Der iSign Server verwendet zur Datenhaltung SQL Datenbanken, MongoDB Datenbanken und Dateien.
In der Standardkonfiguration werden die nötigen Datenbankengines vom iSign Setup automatisch installiert und konfiguriert. Das heißt die Datenbanken laufen auf dem Anwendungsserver. Dies ist für die meisten Anwendungsfälle ausreichend.
Wenn Sie die Datenbanken auf dem Anwendungsserver nutzen möchten, lassen Sie die Datenbanken vom iSign Setup installieren. Installieren Sie die Datenbankengines nicht manuell.
Mögliche Backends
Es ist zu unterscheiden zwichen den verschiedenen Arten der Datenhaltung: SQL, MongoDB und Dateien. Jede Art unterstützt unterschiedliche Backends
| Art | Unterstützte Backends |
|---|---|
| SQL | Microsoft SQL Server 2022, PostgreSQL 16+ |
| MongoDB | MongoDB 6+ |
| Dateien | lokales Dateisystem |
Für andere evtl. kompatible Backends kann kein Support angeboten werden.
Datenbanken
| Bezeichnung | Art | Zweck |
|---|---|---|
| configuration | SQL | Konfigurationsdaten |
| content | SQL | Inhaltssteuerung |
| content | Dateien | Screenshots, Inhalte |
| dataimport | MongoDB | Datenimport |
| identity | SQL | Authentifizierung und Authorisierung |
| forms | MongoDB | Templates |
| alert | SQL | iSign Alert (Alarmierungssystem, optional) |
| vocatis | SQL | Vocatis (Aufrufsystem, optional) |
| signpost | MongoDB | Signpost (Wegweiser, optional) |
Für die meisten dieser Daten ist die Verwendung des Anwendungsservers absolut ausreichend. Lediglich in speziellen Fällen, z.B. für ein Aufrufsystem macht es mitunter Sinn, die Verwendung eines externen Datenbankservers in Betracht zu ziehen.
Assistierte Konfiguration
Die verwendeten Datenbankserver für SQL und MongoDB können durch die iSign Konfiguration (z.B. Konfigurationsassistent) eingerichtet werden.
Diese automatisierte Konfiguration geht von folgenden Vereinfachungen aus:
- Alle Datenbanken einer Art verwenden den gleichen Datenbankserver und die gleichen Einstellungen.
- Die Datenbanken werden getrennt voneinander angelegt.
- Die Namen der Datenbanken sind wie in der Liste angegeben. Diese können optional mit einem Präfix versehen werden. Wenn Sie ein Präfix verwenden wird diese der in der Tabelle genannten Bezeichung vorangestellt. (Z.B. Präfix “my_” ergibt Datenbank “my_vocatis”)
- Der Datenbankuser hat ausreichend Rechte um die Schemata der Datenbank zu erstellen.
Die folgenden Aufgaben mit Bezug auf die Datenbank werden von der iSign Konfiguration übernommen:
- Konfiguration der Datenbank-Einstellungen der iSign Dienste
- Initialisierung der Datenbank
- Migration der Datenbanken
Authentifizierung und Authorisierung
Die Authentifizierung wird über die Verbindungszweichenfolgen / URL festgelegt.
Verwenden Sie eine Idendität, welche neben Abfrage und Änderungen auch Berechtigungen zur Änderung des Datenbankschemas hat.
Während des Betriebs sind Berechtigungen für INSERT/UPDATE/DELETE ausreichend.
Manuelle Konfiguration
Die automatisierte Konfiguration hat einige Vereinfachungen. Insbeonsdere wir für alle Datenbanken die gleiche Verbindungszeichenfolge verwendet. Es ist möglich jede Verbindung einzeln zu konfigurieren, jedoch nur über manuelles editieren der Konfigurationsdateien.
Die Datenbankkonfiguration wird im Konfigurationsverzeichnis (für die Standardinstanz: C:\ProgramData\designo\isign-server\instance\default\data\config.d bzw /usr/share/designo/isign-server/instance/default/data/config.d) abgelegt. Dort wird die Datei 99-db.json erstellt.
Beispiel für 99-db.json
{
"configuration:db": {
"connectionString": "Data Source=sql.server;Database=isign;User Id=sql.user;Password=sql.password;",
"attachDb": null
},
"identity:db": {
"connectionString": "Data Source=sql.server;Database=isign;User Id=sql.user;Password=sql.password;",
"attachDb": null
},
"content:db": {
"connectionString": "Data Source=sql.server;Database=isign;User Id=sql.user;Password=sql.password;",
"attachDb": null
},
"vocatis:db": {
"connectionString": "Data Source=sql.server;Database=vocatis;User Id=sql.user;Password=sql.password;",
"attachDb": null
},
"alert:db": {
"connectionString": "Data Source=sql.server;Database=alert;User Id=sql.user;Password=sql.password;",
"attachDb": null
}
}