Zum Inhalt

Technisches Whitepaper: SMART-Pedigree Infrastruktur & Administration

Zielgruppe: IT-Systemadministratoren, Informationssicherheitsbeauftragte (ISB)
Software-Typ: Lokale Java-Applikation (Portable / jpackage Bundle)
Datenhaltung: 100 % lokal (On-Premise)


1. Applikations-Architektur & Bereitstellung

SMART-Pedigree wird als plattformspezifisches Bundle ausgeliefert.

  • Runtime: Eine isolierte Java Runtime Environment (JRE) ist im Lieferumfang enthalten. Es ist keine systemweite Java-Installation erforderlich.
  • Deployment-Modell: Die Software ist als Portable App konzipiert. Sie kann sowohl lokal als auch auf zentralen Netzlaufwerken (Read-Only) bereitgestellt werden.
  • Berechtigungen: Im Standardbetrieb sind keine Administratorrechte erforderlich.

2. Zentrale Administration ab Version 2.0.0 (admin.json)

Für den unternehmensweiten Rollout unterstützt die Software eine zentrale Konfigurationsdatei namens admin.json. Diese muss im Programmverzeichnis (neben der ausführbaren Datei) liegen.

Vorteil: Ermöglicht ein „Zero-Touch-Deployment“ und die zentrale Steuerung von Netzwerkeinstellungen sowie Datenpfaden.

Beispielhafte Struktur:

{
  "licenseKey": "XXXX-XXXX-XXXX-XXXX-XXXXX",
  "userSettingsPath": "%APPDATA%/SMART-Pedigree/Data",
  "proxy": {
    "enabled": true,
    "host": "proxy.klinik.de",
    "port": 8080,
    "type": "HTTP",
    "authEnabled": true,
    "username": "svc_smartpedigree",
    "password": "cleartext_password_here",
    "nonProxyHosts": "localhost|127.0.0.1|*.klinik.intern"
  }
}

Erklärung der Proxy-Felder:

Feld Typ Beschreibung
enabled Boolean Aktiviert/Deaktiviert die Proxy-Nutzung global.
host String Hostname oder IP-Adresse des Proxy-Servers.
port Integer Port des Proxy-Servers (Standard: 8080).
type String Protokoll-Typ: HTTP oder SOCKS.
authEnabled Boolean Aktiviert die Proxy-Authentifizierung.
username String Benutzername für den Proxy-Zugang.
password String Passwort für den Proxy-Zugang (wird bei Programmstart intern verarbeitet).
nonProxyHosts String Pipe-separierte Liste von Ausnahmen (z.B. für interne Server).

Felder in der admin.json besitzen höchste Priorität, überschreiben lokale Nutzereinstellungen und sperren die entsprechenden Proxy-UI-Eingabefelder für den Endanwender (Read-Only).

Sicherheit der admin.json: Das Proxy-Passwort steht dort im Klartext. Die Datei sollte nur für Administratoren schreibbar und nur für die Benutzer lesbar sein, die SMART-Pedigree verwenden; besser ist ein Dienstkonto, dessen Passwort nur für den Proxy gilt. SMART-Pedigree übernimmt das Passwort nicht in die Benutzereinstellungen.

Fehler in der admin.json: Ist die Datei kein gültiges JSON (z. B. einfache Backslashes in einem Pfad, ein fehlendes Anführungszeichen) oder enthält sie einen ungültigen Wert (z. B. einen unbekannten Proxy-Typ), ignoriert SMART-Pedigree sie vollständig: Keine der Vorgaben (Proxy, Speicherort, Lizenzschlüssel) gilt. Beim Start zeigt das Programm dann einen Hinweis mit Dateipfad, Grund und Fehlerstelle (Zeile, Spalte). Ein Tippfehler in einem Feldnamen (z. B. userSettingPath) wird nicht gemeldet; das Feld wirkt dann nicht.

Passwort aus den Benutzereinstellungen: Gibt ein Anwender das Proxy-Passwort selbst ein, wird es unter Windows mit der Datenschutz-API von Windows (DPAPI) an sein Windows-Konto gebunden gespeichert, unter macOS und Linux mit einem Schlüssel, der nur für ihn lesbar in seinem Benutzerprofil liegt. Liegen die Einstellungen auf einem gemeinsamen Laufwerk und meldet sich ein anderes Konto an (oder unter macOS/Linux ohne die Schlüsseldatei), lässt sich das Passwort dort nicht lesen und muss neu eingegeben werden.


3. Datenhaltung & Speicherpfad-Logik

SMART-Pedigree trennt strikt zwischen Programmdateien und Benutzereinstellungen. Der Speicherort für benutzerspezifische Einstellungen (Einstellungen, Historie, Lizenzdatei, eigene Regeln und Absturz-Sicherungen) wird beim Start über eine Prioritätskette ermittelt. Jede Stufe wird mit einer Schreibprobe geprüft (Ordner anlegen, kurze Datei schreiben und wieder löschen); scheitert sie, geht es mit der nächsten weiter:

  1. IT-Vorgabe (Global): Pfad userSettingsPath aus der admin.json. Umgebungsvariablen werden aufgelöst, in der Schreibweise %NAME% ohne Rücksicht auf Groß- und Kleinschreibung (z. B. %AppData%), unter macOS und Linux zusätzlich als $NAME, ${NAME} und ~. Der Pfad muss vollständig angegeben sein (z. B. C:/Daten/SMART-Pedigree oder %LOCALAPPDATA%/SMART-Pedigree); in JSON / oder doppelte Backslashes \\ verwenden. Ist der Pfad nicht nutzbar (relativ, nicht erreichbar, keine Schreibrechte, unbekannte Variable), verwendet SMART-Pedigree Stufe 3 und zeigt beim Start einen Hinweis.
  2. Portable-Modus: Ohne IT-Vorgabe, falls im Programmverzeichnis geschrieben werden kann: Unterordner data.
  3. OS-Standard (Roaming): Falls das Programmverzeichnis schreibgeschützt ist (Standard bei Netzlaufwerken):
  4. Windows: %APPDATA%\SMART-Pedigree
  5. macOS: ~/Library/Application Support/SMART-Pedigree
  6. Linux: ~/.config/SMART-Pedigree
  7. Notfall-Fallback: System-Temp-Verzeichnis, nur wenn keine der Stufen nutzbar ist. Dann zeigt SMART-Pedigree beim Start einen Hinweis, denn Einstellungen, Lizenz und Absturz-Sicherungen können dort verloren gehen.

  8. IT-Hinweis (Schreibschutz): Die Prüfung beruht auf einem echten Schreibversuch und schlägt fehl, wenn nicht geschrieben werden kann, unabhängig vom Grund, etwa auch bei Freigaben, die nur auf Freigabeebene schreibgeschützt sind. Liegt das Programm auf einem schreibgeschützten Laufwerk, landen alle Dateien dieses Abschnitts im Benutzerverzeichnis (Stufe 3) oder an dem Ort, den Sie in der admin.json vorgeben; im Benutzerprofil (siehe unten) liegen immer nur wenige Verwaltungsdateien.

  9. IT-Hinweis (ein Pfad je Benutzer): Der Pfad in der admin.json muss für jeden Benutzer ein eigener sein (z. B. %APPDATA%\SMART-Pedigree oder ein Pfad mit %USERNAME%). Bei einem gemeinsamen Pfad teilen sich alle Benutzer Einstellungen, Lizenzdatei und Absturz-Sicherungen.
  10. IT-Hinweis (Roaming-Profil): %APPDATA% gehört unter Windows zum Roaming-Profil. Mit servergespeicherten Profilen wandern die Absturz-Sicherungen (Gesundheitsdaten) und die Lizenzdatei mit auf den Profilserver. Soll das vermieden werden, in der admin.json einen Pfad unter %LOCALAPPDATA% vorgeben.

Speichern von Stammbäumen (.sav)

Stammbäume werden ausfallsicher gespeichert: SMART-Pedigree schreibt die neue Fassung zuerst vollständig in eine temporäre Datei im selben Ordner (<Name>.sav.<Zufallszahl>.tmp) und ersetzt die .sav erst danach in einem Schritt. Bei einem Absturz, Stromausfall oder Verbindungsabbruch zum Netzlaufwerk bleibt so die zuletzt gespeicherte Fassung erhalten.

  • IT-Hinweis: Benutzer:innen benötigen im Ordner der Stammbäume das Recht, Dateien anzulegen, umzubenennen und zu löschen, nicht nur zu ändern.
  • IT-Hinweis: Die .sav ist nach jedem Speichern eine neue Datei und übernimmt die Zugriffsrechte des Ordners. Abweichende Rechte, die nur für einzelne Dateien gesetzt wurden, gehen dabei verloren; Rechte daher auf Ordnerebene vergeben.
  • IT-Hinweis: Bleibt nach einem Absturz eine .tmp-Datei neben der .sav liegen, kann sie gelöscht werden; die .sav selbst ist unverändert.
  • IT-Hinweis (gemischte Versionen): Jede .sav enthält die Version ihres Dateiformats. Eine ältere Programmversion öffnet Dateien, die mit einer neueren Version gespeichert wurden und ein neueres Format haben, nicht, damit beim Speichern keine Angaben verloren gehen; die Datei bleibt unverändert. Updates daher möglichst für alle Arbeitsplätze mit gemeinsamem Speicherort zeitgleich ausrollen.

Welche Dateien SMART-Pedigree anlegt und wie Sie sie entfernen

SMART-Pedigree enthält keine Funktion, die alle seine Dateien auf einmal entfernt. Das Zurücksetzen auf die Standardwerte in den Einstellungen betrifft nur die Einstellungen, nicht Lizenz, Absturz-Sicherungen oder Stammbäume. Wer Daten oder Einstellungen löschen will, etwa beim Gerätewechsel, am Ende der Nutzung oder beim Ausscheiden einer Person, löscht die Dateien selbst. Ein normales Löschen entfernt die Dateien aus dem Dateisystem, überschreibt sie aber nicht; wo das nötig ist, gelten die Vorgaben Ihrer Einrichtung für Datenträger (z. B. Festplattenverschlüsselung oder ein sicheres Löschverfahren).

Einstellungsordner (Prioritätskette oben; bei der Standardinstallation unter Windows %APPDATA%\SMART-Pedigree):

Datei Inhalt Beim Entfernen
settings.properties Einstellungen, auch Proxy-Angaben (das Passwort geschützt, siehe Abschnitt 2) Das Programm startet mit den Standardeinstellungen.
history.json zuletzt geöffnete Dateien (Pfade) und zuletzt verwendeter Ordner Die Liste ist leer.
license.dat Lizenzdatei (verschlüsselt) Das Programm verlangt eine neue Aktivierung. Bei Node-Lizenzen löst die Bindung an den Rechner nur der Support (Gerätewechsel/Rehost); das Löschen der Datei allein tut das nicht.
brickGenerator.json eigene Regeln und Textbausteine Ihrer Einrichtung (nur wenn angelegt) Zuvor sichern, falls sie weiter gebraucht werden.
security.log Sicherheitsprotokoll: Zeitpunkt und Art auffälliger Vorgänge (z. B. abgewiesenes Update-Paket, fehlgeschlagene Lizenzprüfung), höchstens 1000 Einträge; keine Patientendaten, Dateinamen oder Lizenzschlüssel, kein Eintrag bei normalem Start. Anzeige unter Hilfe → Sicherheitsprotokoll, abschaltbar in den Einstellungen, wird nicht übertragen Wird beim nächsten Vorfall neu angelegt.
autosave\*.temp vollständige Kopien nicht gespeicherter Stammbäume (Absturz-Sicherung) Siehe unten.

Absturz-Sicherung: Die Kopien entstehen alle 2 Minuten für geänderte Stammbäume und werden beim Speichern und beim Verwerfen gelöscht. Nach einem Absturz bleiben sie liegen, bis beim nächsten Start „Wiederherstellen“ oder „Verwerfen“ gewählt wird. Für eine vollständige Entfernung die Dateien im Ordner autosave löschen; sie enthalten Gesundheitsdaten und sind bei der Löschung von Patientendaten mit zu berücksichtigen. Die Funktion lässt sich in den Einstellungen abschalten.

Benutzerprofil (immer, unabhängig vom Einstellungsordner; Windows %LOCALAPPDATA%\SMART-Pedigree, macOS ~/Library/Application Support/SMART-Pedigree, Linux ~/.config/SMART-Pedigree):

Datei Inhalt Beim Entfernen
instance.lock, instance.token Kennung der laufenden Instanz (Port und Zufallswert, kein Personenbezug) Wird beim nächsten Start neu angelegt.
secret.key Schlüssel für ein gespeichertes Proxy-Passwort (macOS/Linux, unter Windows nur falls die Windows-Datenschutz-API nicht verfügbar ist) Das Proxy-Passwort muss neu eingegeben werden.

Temp-Ordner des Systems (unter Windows %TEMP%): Beim Ziehen per Drag & Drop oder Kopieren in die Zwischenablage legt SMART-Pedigree die gewählten Exportdateien dort ab (.sav, Info, Bild, CanRisk- und HerediCaRe-Datei, Name wie der Stammbaum). Sie enthalten Familiendaten und werden beim Beenden des Programms gelöscht. Bei einem Absturz oder beendeten Prozess bleiben sie liegen und sind von Hand zu löschen.

Von Ihnen angelegte Dateien: Stammbäume (.sav), PDF-Fragebögen, Bilder und Exporte liegen dort, wo Sie sie gespeichert haben. history.json merkt sich nur die Pfade. Der Schutz dieser Dateien hängt vom Speicherort und dessen Zugriffsrechten ab.

Programmordner: Die admin.json (Abschnitt 2) liegt neben dem Programm.


4. Netzwerk-Kommunikation & Sicherheit

Die Software arbeitet primär offline. Für die Lizenzvalidierung und Updates ist eine ausgehende HTTPS-Verbindung (Port 443) erforderlich:

Ziel-Domain Zweck Protokoll
license.piehberz-it.de Lizenzvalidierung & Aktivierung HTTPS (443)
piehberz-it.de Update-Prüfung & Download HTTPS (443)
  • Proxy-Support: Unterstützt systemweite Einstellungen sowie explizite Konfiguration via admin.json.
  • Lokale Verbindung (127.0.0.1): Startet ein Benutzer SMART-Pedigree ein zweites Mal (z. B. per Doppelklick auf eine .sav), übergibt der neue Prozess die Datei an das schon geöffnete Programm über eine Verbindung auf 127.0.0.1 mit einem vom System vergebenen Port. Die Verbindung verlässt den Rechner nicht und nimmt nur Aufrufe desselben Benutzers an. Auf Terminalservern arbeiten mehrere Benutzer gleichzeitig unabhängig voneinander; feste Ports oder Firewall-Freigaben sind nicht nötig.
  • Datenschutz (DSGVO): Die Software arbeitet lokal. Details zur Verschlüsselung und zur Einhaltung der DSGVO finden Sie in unserem [Link: Compliance-Factsheet].

5. Update-Prozess

Die Applikation verfügt über einen integrierten Updater:

  1. Check: Prüfung gegen piehberz-it.de.
  2. Download: Paketierung in ein temporäres Verzeichnis.
  3. Installation: Austausch der Binärdateien.

  4. IT-Hinweis: Bei zentralem Deployment auf schreibgeschützten Netzlaufwerken erfolgt das Update manuell durch Austausch der Dateien durch den Administrator im Programmverzeichnis. Vor dem Angebot eines Updates prüft SMART-Pedigree mit einem Schreibversuch, ob der Programmordner (der Ordner mit der SMART-Pedigree.exe) beschreibbar ist. Ist er es nicht, lädt das Programm nichts herunter, startet den Updater nicht und weist mit dem Ordner im Text darauf hin, dass der Administrator die neue Version einspielen muss. Das gilt auch für Installationen in einem Ordner ohne Schreibrechte, etwa unter „Programme“.