Lokale Ressourcen
Diese Seite beschreibt, welche Daten das AI Kit auf Ihren Servern speichert, wenn Sie es On-Premise betreiben – die Speicherbereiche, was jeweils darin liegt und wie Sie sie schützen.
Was lokal gespeichert wird
Bei einer On-Premise-Installation hält das AI Kit alle Anwendungsdaten im Dateisystem des Hosts (bzw. auf dem Volume, das Sie als Datenverzeichnis eingehängt haben). Es gibt keinen separaten Datenbankserver, den Sie installieren oder sichern müssten.
Die Daten fallen in einige wenige Kategorien:
Konfiguration
Für jeden Workspace speichert das AI Kit:
- Definitionen von Workflows und Agenten.
- Konfigurationen der Wissensbasen (Quellen, Aktualisierungspläne, Verweise auf Embedding-Modelle).
- Konfigurationen der Modelle (Anbieter, Modell-ID, der verschlüsselte API-Schlüssel).
- Persona-Definitionen.
- Konfigurationen der OAuth-Anbieter (Aussteller, Scopes, aber nicht die Token der einzelnen Benutzer).
Das ist der „Quellcode“ des Workspace – klein, aber wertvoll.
Laufhistorie
Für jeden Lauf jeder Automation:
- Die vollständige Abfolge der ausgeführten Schritte.
- Die Werte, die bei jedem Schritt in den Speicher geschrieben wurden.
- Protokolle der Ausführung jedes Schritts.
- Ein Status (läuft, abgeschlossen, fehlgeschlagen, wartend).
- Metriken (Tokens, Dauer, Kostenschätzung).
Die Laufhistorie wächst mit der Nutzung. Die Plattform löscht abgeschlossene Workflow-Läufe automatisch, sobald sie älter als eine einstellbare Aufbewahrungsfrist sind. Konversationen mit Agenten werden standardmäßig nach 60 Tagen ohne Aktivität gelöscht (AGENT_JOB_RETENTION).
Wissensinhalte
Für jede Wissensbasis:
- Die Abschnitte (Chunks), die aus jeder Quelle extrahiert wurden.
- Die Embeddings (Vektoren) dieser Abschnitte.
- Ein kleiner Index, der Abfragen beschleunigt.
Wissensinhalte sind in den meisten Installationen mit Abstand die größte Kategorie. Eine Wissensbasis mit einigen tausend Dokumenten kann mehrere Gigabyte belegen.
Authentifizierung
Das AI Kit führt eine eigene Datenbank für die Anmeldung:
- Benutzerdatensätze (E-Mail, Name, Sprache, gehashte Passwörter).
- Mitgliedschaften in Workspaces und Rollen.
- Einmalcodes (gehasht) während ihrer (sehr kurzen) Gültigkeit.
- Mit Single Sign-On: welches Konto beim Anmeldeanbieter zu welchem Benutzer gehört (Aussteller und Konto-ID). Die Tokens des Anbieters werden nicht gespeichert.
Geheimnisse
Jedes Feld, das in der Plattform als geschütztes Feld markiert ist (API-Schlüssel, SMTP-Passwörter, Datenbankpasswörter, OAuth-Token), wird mit einem workspace-spezifischen Schlüssel verschlüsselt, bevor es auf die Festplatte geschrieben wird. Selbst ein Angreifer, der die Rohdateien liest, kann diese Werte nicht wiederherstellen, ohne zusätzlich den Schlüssel zu besitzen.
Wo die Daten auf der Festplatte liegen
Das AI Kit liest für seine Datenpfade zwei Umgebungsvariablen:
AIKIT_CONFIG_DIR– Workspace-Konfiguration. Standard:/_configim Container.AIKIT_JOB_DIR– Laufhistorie und Wissensinhalte. Standard:/_jobim Container.
Bei einer Docker-Installation werden beide üblicherweise unter einem gemeinsamen Verzeichnis des Hosts eingehängt (zum Beispiel /opt/aikit/data/config und /opt/aikit/data/job).
Dateien, die eine Automation erzeugt oder empfängt (erzeugte Excel- oder Word-Dateien, Anhänge, hochgeladene Dateien), gehören zum Lauf und liegen in dessen Speicher unterhalb von AIKIT_JOB_DIR. Sie werden zusammen mit dem Lauf gelöscht. Nur Schritte wie „Datei schreiben“ schreiben an andere Stellen auf dem Server – an den Pfad, der in der Automation eingestellt ist.
| Einstellung | Wirkung | Standard |
|---|---|---|
WORKFLOW_JOB_RETENTION | Tage, nach denen Workflow-Läufe (samt ihren Dateien) gelöscht werden, gezählt ab dem Start des Laufs. | 30 |
AGENT_JOB_RETENTION | Tage ohne Aktivität, nach denen Konversationen mit Agenten (samt ihren Dateien) gelöscht werden. | 60 |
AUDIT_LOG_RETENTION | Tage, die Einträge im Protokoll aufbewahrt werden. | 365 |
AIKIT_TRUST_PROXY | Vorgeschaltete Proxys, deren Angabe zur Client-IP (X-Forwarded-For) übernommen wird – true, false, eine Zahl (Anzahl Proxys) oder Adressen/Netze. Bestimmt die IP-Adresse im Protokoll. | loopback, linklocal, uniquelocal (Proxys im eigenen Netz) |
AIKIT_UPLOAD_MAX_MB | Maximale Größe einer Datei, die im Posteingang oder in einem Startformular hochgeladen wird. Hochgeladene Dateien, die nie abgeschickt wurden, werden nach einem Tag gelöscht. | 25 |
AIKIT_SCRIPT_ROOTS | Verzeichnisse (getrennt durch ;), aus denen „Skript ausführen“ Skripte starten darf. | keine – keine Einschränkung |
AIKIT_SCRIPT_TIMEOUT_SEC | Maximale Laufzeit eines Skripts in Sekunden. | 300 |
Eine nützliche Faustregel:
- Konfiguration ist klein, stabil und unersetzlich. Sichern Sie sie.
- Läufe sind umfangreich, wachsen ständig und sind ersetzbar. Sichern Sie sie, wenn Sie die Historie brauchen; ansonsten setzen Sie andere Schwerpunkte.
- Wissensinhalte sind umfangreich und aufwendig neu zu erstellen (erneutes Embedding kostet Geld und Zeit). Sichern Sie sie.
Sicherungen
Für die meisten Installationen genügt eine einfache Sicherungsstrategie:
- Stoppen Sie das AI Kit (oder verlassen Sie sich auf einen Dateisystem-Snapshot, wenn Ihr Speicher atomare Snapshots unterstützt).
- Kopieren Sie das Datenvolume an einen Sicherungsort.
- Starten Sie das AI Kit wieder.
Die Wiederherstellung läuft umgekehrt: Volume zurückspielen, neu starten, fertig.
Die Plattform verlangt kein aufwendiges mehrstufiges Sicherungsverfahren. Es gibt keine separate Datenbank, die exportiert, und keinen separaten Index, der neu aufgebaut werden müsste.
📷 SCREENSHOT: Ein einfaches Architekturdiagramm mit dem AI-Kit-Container, zwei eingehängten Volumes mit den Beschriftungen „config“ und „job“ und einem Sicherungspfeil zu einem externen Sicherungsziel.
Dateiberechtigungen
Die Datendateien gehören dem Benutzer des AI Kit im Container. Auf dem Host gilt:
- Die eingehängten Verzeichnisse sollten einem Benutzer gehören, der dem Benutzer im Container entspricht (meist UID 1000).
- Sie sollten nur für diesen Benutzer lesbar und beschreibbar sein. Vermeiden Sie Mounts, die für alle lesbar sind.
- Sie sollten für andere, nicht beteiligte Dienste auf demselben Host nicht zugänglich sein.
Verschlüsselung ruhender Daten
Das AI Kit verschlüsselt geschützte Felder mit einem Schlüssel auf Anwendungsebene. Für eine Verschlüsselung auf Speicherebene (das gesamte Volume) nutzen Sie das Betriebssystem oder das Speichersystem:
- Linux: LUKS / dm-crypt für die Partition.
- Cloud-Speicher: Die meisten Cloud-Volumes sind standardmäßig verschlüsselt.
Beide Ebenen sind sinnvoll. Die Verschlüsselung auf Anwendungsebene schützt vor einem abgeflossenen Datenbank-Snapshot, die Verschlüsselung auf Speicherebene vor einer gestohlenen Festplatte.
Empfehlungen
- ✅ Nutzen Sie Dateisystem-Snapshots (ZFS, Btrfs, LVM) für günstige, häufige Sicherungen des Datenvolumes.
- ✅ Verschlüsseln Sie den Speicher des Hosts im Ruhezustand. Die eigene Verschlüsselung des AI Kit ist eine Ergänzung, kein Ersatz.
- ✅ Dokumentieren Sie, wo die Sicherungen liegen, wer Zugriff hat und wie die Wiederherstellung funktioniert. Der Tag, an dem Sie sie brauchen, ist nicht der Tag, um das herauszufinden.
- ✅ Testen Sie mindestens einmal eine Wiederherstellung. Ungetestete Sicherungen sind Wünsche, keine Sicherungen.
- ⚠️ Einige Dateien im Datenvolume ändern sich ständig, solange das AI Kit läuft. Sichern Sie ohne Dateisystem-Snapshots in einem kurzen Zeitfenster, in dem alles angehalten ist, damit der Stand konsistent ist.
- ⚠️ Wissensinhalte lassen sich bei Verlust aus den ursprünglichen Quellen neu einbetten, aber das erneute Embedding verursacht echte Kosten. Sichern Sie sie lieber.
- ❌ Bearbeiten Sie Dateien im Datenvolume nicht von Hand. Nutzen Sie die Oberfläche der Plattform oder ihre Export- und Importfunktionen.
- ❌ Legen Sie Sicherungen nicht auf derselben Festplatte ab wie das produktive Volume. Fällt die Festplatte aus, sind beide verloren.
Nächste Schritte
- Netzwerkzugriff – die Netzwerkseite einer On-Premise-Installation.
- Best Practices → Protokollierung und Compliance – was in Protokolle geschrieben wird.