GDPR Art. 28

    Databehandleraftale klar til underskrift

    Skoleelev ApS er databehandler, skolen er dataansvarlig. Aftalen leveres som PDF sammen med kontrakten — opdateret 2026 med AI-chokepunkt og prompt-audit i Bilag C.

    Kontakt for at modtage DPA

    Bilag B — Underdatabehandlere

    UnderdatabehandlerFormålRegionNote
    Elestio (LeapSwitch Networks Ltd.)Managed self-hosted Supabase-stack (PostgreSQL, auth, storage, edge functions) — drift, opdateringer, backup-orkestreringIrland (HQ) / EU driftISO 27001, DPA underskrevet, ingen adgang til klartekst-PII
    Hetzner Online GmbHFysisk hosting af database, applikation og filer + krypteret S3-backupDE — fsn1 Falkenstein (primær), nbg1 Nürnberg (replica), FI — hel1 Helsinki (Hetzner Object Storage, S3-kompatibel — krypteret daglig backup af DB + Storage-filer + serverless funktion-logs, 30 dages opbevaring)ISO 27001, BSI C5, EU-ejet
    OpenAI (Enterprise)Tekst-AI (gpt-4o, gpt-4o-mini, o3-mini)EU residencystore:false + scrub + hashet pseudobruger
    Google AI Studio (Gemini)Billede- & multimodal-AIEU residencystore:false + scrub
    Stripe Payments EuropeBetaling (ingen elev-PII)EU (Irland)PCI-DSS Level 1
    Resend / PostmarkTransaktionel emailEUDPA + EU sub-processor liste

    Bemærk: Supabase er open source-software, som vi selv hoster via Elestio på Hetzners EU-infrastruktur — Supabase Inc. er ikke underdatabehandler, og ingen elevdata forlader vores selv-hostede miljø. Skolen informeres mindst 30 dage før tilføjelse af en ny underdatabehandler og kan gøre indsigelse.

    Bilag C — Tekniske og organisatoriske foranstaltninger (TOMs 2026)

    • AI PII-chokepunkt (aiSafeFetch) — scrubber CPR, NHS/NI, e-mail og elevnavne; blokerer med HTTP 422 ved detektion
    • AI-prompt-audit (ai_prompt_audit, 180 dages retention) — adgangskontrol: school_admin ser egne elever; platform-administratoren ser kun pseudonymiseret metadata (hashet bruger-id, funktion, model), aldrig prompt-indhold med personoplysninger
    • Default-deny PII for Skoleelev-personale — produktionssupport ser kun pseudonymiseret brugerkatalog (UUID + rolle + skole-præfiks). Identifikation kræver audit-logget break-glass-the system med skriftlig begrundelse (min. 20 tegn), parental-consent-tjek for under 13 år, og automatisk forældre-/DPO-notifikation (child_data_breakglass_notice)
    • Sensitive-access-log — alle læsninger af psykolog/sundhed/SEN/bekymringssager via sikret server-funktion
    • Row-Level Security (adgangskontrol) på alle tabeller; views er security_invoker=true; platform-administratoren har ingen blanket FOR ALL-policy på elevdata-tabeller
    • Impersonation kræver skriftlig begrundelse og blokerer under 13 år uden forældersamtykke (parental consent gate)
    • Tofaktor (TOTP, RFC 6238) obligatorisk for the platform administrator og school_admin med 3-login-indkøringsperiode
    • AES-256 i hvile; TLS 1.3 i transit; HSTS + CSP; signerede links til private buckets
    • Cross-region live-replika (Falkenstein → Nürnberg) + daglige snapshots; RPO < 1 minut
    • child_data_consents — 6 samtykketyper for under-13; useChildAgeGate blokerer AI-personalisering uden samtykke
    • admin_audit_log (24 mdr.) + daglig pg_cron rotation
    • Brudvarsel < 24 t til skolen (GDPR Art. 33)
    Læs også

    Tilhørende dokumenter