Wir behandeln Ihre Kartendaten
wie den regulierten Datensatz, der es ist.
Rexa ist von Leuten gebaut, die schon vorher mit Finanzdaten-Systemen gearbeitet haben. Die Kontrollen unten sind keine Wunschliste — sie sind im Code, in der Datenbank und in der CI verankert. Alles ist prüfbar.
Verschlüsselung überall
AES-256-GCM-Envelope-Verschlüsselung für Beleg-Blobs. Produktionsschlüssel werden beim Boot aus AWS KMS entpackt — der Master-Schlüssel liegt nie im Klartext auf der Platte. argon2id für Passwörter (OWASP-gehärtet). TLS für alle internen Verbindungen, in Produktion auch für die Datenbank verpflichtend.
Tenant-Isolation auf zwei Ebenen
Die API läuft als Postgres-Rolle ohne Superuser-Rechte. Jede unternehmensbezogene Tabelle hat Row-Level Security verpflichtend an, gesteuert über current_setting('app.company_id') pro Request. Die Trennung in der Anwendungsschicht ist die zweite Verteidigungslinie, nicht die einzige.
Append-only Audit-Log
Auf audit_events gibt es nur INSERT und SELECT — UPDATE und DELETE werden auf SQL-Ebene abgelehnt, selbst bei Code-Bugs. Jede Statusänderung (Freigaben, Exporte, Periodenabschlüsse, Rollenänderungen, DSGVO-Löschungen) schreibt eine Zeile.
Echte Auth-Primitive
Passwörter in argon2id (19 MiB / time=2 / parallelism=1). TOTP-2FA mit QR-Enrollment. Sessions sind widerrufbar über den JWT-jti-Claim. Pro Route Rate Limits auf Login, Registrierung, TOTP-Verify und Passwort-Reset.
Nie die vollständige PAN
Kartendaten werden bereits am Adapter-Rand auf die letzten vier Ziffern reduziert — die volle Nummer kommt nie ins System, in die Datenbank oder in die Logs. Damit bleibt unser PCI-Scope minimal: wir liegen komplett außerhalb von SAQ A.
EU-Datenresidenz
Postgres + S3 in eu-central-1, API + Worker auf Fly Amsterdam. Optionale KI-Assistent-Funktionen (Anthropic) erfordern explizites Opt-in pro Tenant plus einen unterzeichneten AVV — sonst lehnen wir solche Aufrufe in Produktion ab.
Was wir operativ umgesetzt haben
Artikel 15 + 17 umgesetzt
Vollständiger Datenexport per Klick (JSON-Paket) und Löschung, die freie-Text-PII entfernt, aber steuerlich erforderliche Finanzdaten erhält.
Aufgelistet und offengelegt
Jeder Dritte, der Kundendaten anfasst, ist aufgeführt — mit Region und Datentypen.
Liste ansehen →NIS2-konformes Playbook
Schweregrade, NCSC-NL-Meldefristen 24/72/30 Tage, Kommunikationsvorlage für Kunden.
Spaltenweise geregelt
7 Jahre für steuerlich relevante Felder. 90 Tage für Sessions. Freie-Text-PII werden bei Löschung oder 30 Tage nach Austritt entfernt.
Gepinnt, gescannt, signiert
Jede GitHub Action ist auf einen Commit-SHA gepinnt. npm audit blockiert Merges ab high+. Dependabot aktualisiert Abhängigkeiten wöchentlich.
Produktions-Deploys mit Freigabe
Manuelle Freigabe für Produktions-Deploys über die GitHub-`production`-Umgebung. Keine Deploys, wenn die CI rot ist.
Roadmap, offen einsehbar
SOC 2 Type I
Auf AnfrageMit der Beweissammlung für Type I beginnen wir, sobald der erste zahlende Kunde mit entsprechender Beschaffungshürde unterschreibt. Type II folgt etwa sechs Monate später.
SAML / OIDC SSO
EnterpriseFunktion des Enterprise-Tiers, vorbereitet — wird scharf geschaltet, sobald ein Kunde sie braucht.
BYOK-Verschlüsselung
EnterpriseVerschlüsselungsschlüssel pro Tenant. Das Schema steht; die KMS-Integration hängt hinter einem Env-Flag.
Bug Bounty
LiveCoordinated Disclosure per security.txt + E-Mail. HackerOne, wenn die Skala es verlangt.
NIS2-Bereitschaft
LiveIR-Playbook, Lieferketten-Kontrollen und Meldefristen von Anfang an nach NIS2 ausgerichtet.
USt-Vorabmeldung (SAF-T)
Im AufbauNL zuerst, danach FR/DE/UK, sobald E-Rechnungs-Pflichten greifen.
Etwas gefunden?
Coordinated Disclosure: Sicherheitsprobleme bitte an security@rexa.one melden. Wir bestätigen innerhalb eines Werktags. Safe-Harbor für gutgläubige Forschung; keine rechtlichen Schritte, solange die Offenlegung unserer security.txt-Richtlinie folgt.
Unterauftragsverarbeiter
Jeder Dritte, der Kundendaten verarbeitet, ist öffentlich gelistet — mit Region und Datentyp, gemäß DSGVO Art. 28.
Liste ansehen →