Richtlinie

Infrastruktur & Abhängigkeitsverwaltung

Aktualisiert: April 2026 · aidX AG, Pfäffikon ZH, Schweiz

Diese Richtlinie definiert, wie die aidX AG die Infrastruktur, Dienste und Softwareabhängigkeiten von mentalhealthGPT.ch verwaltet, um Sicherheit, Verfügbarkeit und Schweizer Datensouveränität zu gewährleisten.

1. Infrastrukturübersicht

  • Gesamte Produktionsinfrastruktur ausschliesslich in der Schweiz gehostet (Infomaniak Network SA, Genf)
  • Privates internes Netzwerk kein direkter öffentlicher Zugriff auf Backend-Dienste
  • Öffentlicher Zugriff nur über nginx Reverse Proxy auf Ports 80/443 mit TLS 1.2+
  • Container-basiertes Deployment mit Docker und Docker Compose
  • Keine US-Hyperscale-Cloud-Anbieter (AWS, Azure, GCP)

2. Infrastrukturkomponenten

nginx Reverse Proxy und TLS-Terminierung; Konfiguration in Git verwaltet, Deployment via CI/CD.

Node.js API Backend-Dienst; Dockerisiert, bei jedem Deployment neu aufgebaut.

PostgreSQL Primäre Datenbank; eingeschränkter Zugriff, Zugangsdaten ausschliesslich über Vault.

Redis Session-Pairing und Caching; passwortgeschützt, nur im internen Netzwerk.

MinIO S3-kompatibler Objektspeicher; in der Schweiz gehostet, Zugangsdaten über Vault.

HashiCorp Vault HA-Cluster mit Transit Auto-Unseal; alle Secrets werden hier zentral verwaltet.

3. Änderungsmanagement

  • Alle Infrastrukturänderungen vor der Anwendung in Git gespeichert (Git-First-Prinzip)
  • Keine direkten Bearbeitungen von Produktionskonfigurationsdateien nur via Git + CI/CD
  • Staging-Umgebung validiert alle Änderungen vor dem Produktions-Deployment
  • Produktions-Deployments erfordern manuelle Genehmigung in der GitLab CI/CD-Pipeline
  • Notfall-Hotfixes werden unmittelbar nach Anwendung im Git nachgeführt

4. Secrets & Zugangsdatenverwaltung

  • Alle Zugangsdaten ausschliesslich über HashiCorp Vault (KV v2) verwaltet
  • Separate Vault KV-Mounts für Staging (staging-kv/) und Produktion (kv/)
  • Jeder Dienst hat eine dedizierte Vault-Richtlinie mit minimal erforderlichen Berechtigungen
  • Secrets beim Container-Start in In-Memory-Tmpfs gerendert nie auf Disk geschrieben
  • Bootstrap-Tokens für Vault werden manuell verwaltet nie in Git-Repositories gespeichert

5. Anwendungs-Abhängigkeitsverwaltung

  • Ausschliesslich Node.js LTS-Versionen Aktualisierung bei neuen LTS-Releases
  • npm audit bei jedem CI/CD-Build hohe/kritische Befunde blockieren das Deployment
  • Minimales Abhängigkeitsprinzip kein Paket ohne klare Begründung und Review
  • Alle neuen Abhängigkeiten auf Lizenzkompatibilität und bekannte Schwachstellen geprüft
  • package-lock.json in Git gespeichert für reproduzierbare Builds

6. Infrastruktur-Abhängigkeitsverwaltung

  • Docker-Basis-Images auf spezifische Versionen festgelegt regelmässig überprüft und aktualisiert
  • Docker-Images bei jedem Deployment neu aufgebaut (keine Wiederverwendung vorheriger Layer)
  • Betriebssystem-Sicherheitsupdates werden regelmässig auf allen Servern eingespielt
  • Drittanbieter-Dienste (Zoom, Stripe, Infomaniak AI) auf Deprecation-Hinweise überwacht

7. Verfügbarkeit & Wiederherstellung

  • Monitoring via Prometheus + Grafana mit Alarmierung bei Verfügbarkeitsmetriken
  • Datenbank-Backups verschlüsselt und innerhalb der Schweizer Jurisdiktion aufbewahrt
  • Container-Restart-Richtlinien gewährleisten automatische Wiederherstellung bei transienten Fehlern
  • Vault HA-Cluster stellt sicher, dass Secret-Zugriff kein Single Point of Failure ist

8. Drittanbieter-Integrationsverwaltung

  • Zoom: OAuth 2.0 PKCE, Tokens verschlüsselt gespeichert, Webhook-Signaturen verifiziert (HMAC-SHA256)
  • Stripe: PCI DSS Level 1 Zahlungsdienstleister keine Kartendaten auf aidX-Systemen
  • Infomaniak AI: Schweizer LLM-API keine klinischen Daten in Inference-Anfragen
  • Alle API-Zugangsdaten in HashiCorp Vault nie im Quellcode

9. Kontakt

hello@aidx.ch

aidX AG
Bachtelstrasse 57, 8330 Pfäffikon ZH, Schweiz