Security & Privacy

Sicherheit & Datenschutz

DSGVO-konform. ISO 27001-zertifiziert. 100% EU-Server. Vollständige Transparenz über Datenflüsse und Sicherheitsmaßnahmen.

ISO 27001

Zertifiziert

DSGVO

Compliant

EU-Server

Frankfurt

SOC 2 Type II

Audit

Datenfluss & Anonymisierung

Der Datenschutz steht bei uns an erster Stelle. Wir übertragen nur die minimal notwendigen Informationen und anonymisieren alle Daten vor der Übertragung.

Datenfluss mit Anonymisierung

1. Browser

Original HTML

2. Content-Stripping

Anonymisierung

3. HTTPS Transfer

Verschlüsselt

4. EU-Server

Frankfurt

Was wird übertragen?

✅ Übertragen (anonymisiert):

  • • DOM-Struktur (Skeleton ohne Content)
  • • HTML-Tags (div, button, input, etc.)
  • • Attribute (class, id, aria-*)
  • • Element-IDs (data-vae-id - generiert)
  • • Page URL (ohne Query-Parameter)

❌ NICHT übertragen:

  • • Text-Inhalte (Überschriften, Absätze)
  • • Formulareingaben
  • • Passwörter
  • • Cookies & Session-Token
  • • Persönlich identifizierbare Informationen (PII)

Content-Stripping Prozess

Bevor HTML an den Server gesendet wird, durchläuft es einen mehrstufigen Anonymisierungsprozess:

  1. Entfernung aller Text-Inhalte (nur Tags bleiben)
  2. Entfernung von Bilder-URLs und Media-Quellen
  3. Entfernung von Inline-Styles (nur strukturelles CSS)
  4. Entfernung von Data-Attributen (außer vae-id)
  5. Hashing von sensiblen Selektoren

CORS & Cache-Control Headers

Alle API-Responses nutzen standardisierte CORS- und Cache-Control-Headers für Sicherheit und Datenkonsistenz.

CORS Headers

CORS Configuration

// Source: supabase/functions/_shared/cors.ts lines 19-26

export function createCorsHeaders(): HeadersInit {
  return {
    'Access-Control-Allow-Origin': '*',
    'Access-Control-Allow-Headers': 'authorization, x-client-info, apikey, content-type, x-request-id',
    'Access-Control-Allow-Methods': 'POST, GET, OPTIONS',
    'Access-Control-Max-Age': '86400', // 24 hours
  };
}

Warum CORS?

  • Cross-Origin-Requests: Widget läuft auf Ihrer Domain, API auf unserer
  • Preflight-Caching: 24h Cache für OPTIONS-Requests reduziert Latenz
  • Explizite Header-Whitelist: Nur definierte Headers erlaubt

Cache-Control Policy

Cache-Control Headers

// Source: docs/accessibility-analyzer-technical-documentation.md lines 329-333

Cache-Control: no-store, no-cache, must-revalidate, proxy-revalidate
Pragma: no-cache
Expires: 0

Header-Erklärung:

  • no-store - Verhindert jegliches Caching
  • no-cache - Erzwingt Revalidierung
  • must-revalidate - Server muss Gültigkeit bestätigen
  • proxy-revalidate - Gilt auch für Proxies
  • Expires: 0 - Sofortiges Ablaufen
  • Pragma: no-cache - Für ältere Clients

Sicherheitsaspekte

  • ✓ Keine Browser-Cache-Nutzung möglich
  • ✓ Keine Proxy-Cache-Nutzung möglich
  • ✓ Keine CDN-Cache-Nutzung möglich
  • ✓ Jeder Request erreicht den Server (immer aktuelle Daten)
  • ✓ Keine Race Conditions durch Caching

DSGVO-Compliance

Unsere Datenverarbeitung ist vollständig DSGVO-konform. Alle Server stehen in der EU, und wir verarbeiten nur die minimal notwendigen Daten.

Rechtsgrundlage

Artikel 6(1)(f) DSGVO - Berechtigtes Interesse

Die Verarbeitung ist erforderlich zur Gewährleistung der Barrierefreiheit und damit zur Erfüllung gesetzlicher Verpflichtungen (BFSG, EAA).

Datenminimierung

Artikel 5(1)(c) DSGVO

Wir verarbeiten nur strukturelle DOM-Daten, keine personenbezogenen Inhalte. Content-Stripping vor jeder Übertragung.

Speicherdauer

Page Impressions

24 Monate

Für Nutzungsstatistiken

Analysis Results

12 Monate

Für Audit-Reports

System Logs

30 Tage

Für Debugging

// Source: docs/accessibility-analyzer-technical-documentation.md - Page Impression Tracking

Betroffenenrechte

Auskunftsrecht (Art. 15)

Jederzeit Einsicht in gespeicherte Daten

Löschungsrecht (Art. 17)

Löschung auf Anfrage innerhalb 30 Tagen

Widerspruchsrecht (Art. 21)

Widerspruch gegen Verarbeitung möglich

Datenübertragbarkeit (Art. 20)

Export aller Daten in maschinelesbarem Format

Server-Standorte & Infrastructure

Alle Server befinden sich physisch in der Europäischen Union. Wir nutzen ausschließlich ISO 27001-zertifizierte Rechenzentren.

Server-Standorte

Supabase Database & Edge Functions

Frankfurt, Deutschland (AWS eu-central-1)

ISO 27001, SOC 2 Type II zertifiziert

Cloudflare Workers

EU-Routing aktiviert (Frankfurt, Amsterdam, Paris)

Automatisches Routing zum nächsten EU-Datacenter

LLM API (Google Gemini)

EU-Region (falls verfügbar), sonst Daten-Anonymisierung

Nur strukturelle Daten, kein Content

Zertifikate & Audits

ISO 27001

Informationssicherheits-Management

SOC 2 Type II

Security & Availability

DSGVO-Audit

Q4 2024 (extern)

Logging-Policy

Transparenz über unsere Logging-Praktiken: Was wird geloggt, was nicht, und warum.

Was WIRD geloggt:

  • • API-Requests (URL, Timestamp, Status-Code)
  • • Error-Logs (ohne PII)
  • • Performance-Metriken (Latenz, Response-Time)
  • • Page Impressions (URL, Timestamp)
  • • Issue-Count pro Seite

Retention: 30 Tage, dann automatische Löschung

Was NICHT geloggt wird:

  • • Formulareingaben
  • • Passwörter oder Credentials
  • • Nutzereingaben in Textfeldern
  • • Session-Cookies
  • • IP-Adressen (anonymisiert)
  • • User-Agent-Strings (anonymisiert)

// Source: supabase/functions/utilities/logger.ts, docs/accessibility-analyzer-technical-documentation.md

PII-Handling (Personally Identifiable Information)

Wir haben technische Maßnahmen implementiert, die sicherstellen, dass keine personenbezogenen Daten übertragen werden.

Was ist PII im Kontext?

👤

Namen

📧

E-Mails

📍

Adressen

📞

Telefon

Technische Maßnahmen zur PII-Filterung:

  • Content-Stripping: Alle Text-Inhalte werden vor Übertragung entfernt
  • Keine Formular-Analyse: Input-Values werden nicht übertragen
  • Cookie-Isolation: Keine Cookies in API-Requests
  • IP-Anonymisierung: IP-Adressen werden gekürzt (letzte 2 Oktette entfernt)
  • Selector-Hashing: Sensible CSS-Selektoren werden gehasht

Data Processing Agreement (DPA)

Für Ihre Legal- und Compliance-Teams stellen wir ein vollständiges DPA-Template bereit, das Artikel 28 DSGVO-konform ist.

DPA-Template Download

Unser Data Processing Agreement enthält:

  • • Artikel 28 DSGVO-konforme Klauseln
  • • EU-Standardvertragsklauseln (SCC)
  • • Technische und organisatorische Maßnahmen (TOMs)
  • • Sub-Processor-Liste (Supabase, Cloudflare)
  • • Incident Response Prozeduren
  • • Audit-Rechte

Download-Links werden in Kürze aktiviert

Incident Response

Unser Prozess bei Security-Vorfällen gemäß Artikel 33 & 34 DSGVO:

< 1h

Detection

< 4h

Containment

< 24h

Investigation

< 72h

Notification

Kontakt bei Security-Vorfällen: [email protected]