GDPR-politik
Sidst opdateret: 9. maj 2026 · v3.0 · Træder i kraft straks
Gældende forordninger: EU's generelle forordning om databeskyttelse (2016/679), irsk databeskyttelseslov 2018
1. Vores forpligtelse
YARDtwin Ltd er forpligtet til fuld overholdelse af databeskyttelsesforordningen (GDPR). Som både dataansvarlig (for egne kundedata) og databehandler (der behandler driftsdata på vegne af vores kunder) implementerer vi passende tekniske og organisatoriske foranstaltninger til beskyttelse af personoplysninger i alle led.
2. Roller og ansvar
3. Databehandleraftale (DPA)
Alle kunder kan gennemgå og acceptere vores databehandleraftale via selvbetjenings- DPA-siden. Kunder på Standard- og Founder-planer modtager desuden en medunderskrevet databehandleraftale, der dækker: behandlingens omfang og formål, typer af behandlede personoplysninger, kategorier af registrerede, begge parters forpligtelser, styring af underdatabehandlere, underretning om databrud, internationale overførsler og revisionsrettigheder. For udførelse af DPA, kontakt admin@yardtwin.com (cc til databeskyttelsesrådgiveren på dpo@yardtwin.com).
4. Tekniske foranstaltninger (art. 32 GDPR)
Alle data krypteres under overførsel (TLS 1.2+). Adgangskoder hashes med bcrypt (12 runder). PostgreSQL Flexible Server anvender transparent datakryptering i hvile. Azure Blob Storage krypteres i hvile. Kryptering på applikationsniveau (AES-256-GCM) for biometriske data (billeder af kørekort, signaturbilleder) med nøgler opbevaret i Azure Key Vault. JWT-tokens er kryptografisk signerede (HS256). Hemmeligheder administreres via Azure Key Vault, der tilgås af App Service-styret identitet — ingen hemmeligheder i kode, miljøfiler eller containerimages.
Rollebaseret adgangsstyring (RBAC) med seks definerede roller (admin, ops_manager, gate_guard, warehouse_operator, carrier, super_admin). Princippet om mindst nødvendige rettigheder håndhæves via middleware på alle godkendte ruter. Tenant-isolation verificeres via en automatiseret 25-test cross-tenant-revision ved hver release. SSO understøttes via Google og Microsoft til multifaktorgodkendelse.
Komplet revisionslogning af brugerhandlinger: brugeridentitet, tidsstempel, IP-adresse, handlingsverbum, berørt enhed, gamle og nye værdier. GMP-relevante handlinger markeres særskilt (is_gmp_relevant=1). Append-only på applikationslaget; 6 års opbevaringstid. Pseudonymiseres, men slettes ikke ved anmodning om sletning i henhold til art. 17 (tilsidesættelse via art. 17, stk. 3, litra b, om juridisk forpligtelse).
Hostet på Microsoft Azure (Sverige Central + Norge Øst, EØS). Containeriseret App Service udrullet via Azure Container Registry med staging-slot-og-swap. Kun port 80/443 eksponeret; PostgreSQL er ikke direkte tilgængelig fra internettet. Azure NSG og Front Door (planlagt). Application Insights med schema-drift-alarm på Postgres-fejl af typen "column / relation does not exist" (15-minutters vindue). End-to-end /health/db-write-probe verificerer, at applikationen kan skrive og læse databasen ved hver udrulning.
Vi indsamler kun data, der er nødvendige for levering af tjenesten. Valgfrie chaufførfelter (telefon, e-mail) kan efterlades tomme, hvor kundens proces tillader det. Biometrisk verifikation er som standard deaktiveret pr. lokation; lokationsadministrator aktiverer det. Nyhedsbrevet indsamler kun e-mail og valgfrit firmanavn.
Hver pull request gennemgår automatiserede sikkerhedstjek: npm audit (afhængigheds-CVE'er på HIGH+ blokerer deploy), Trivy (container CVE-scanning), Semgrep SAST (OWASP top-ten + Node.js + React + regler for hemmeligheder), gitleaks (hemmelighedsscanning over fuld git-historik) og OWASP ZAP (DAST mod staging efter tidsplan). Dependabot åbner PRs for nye CVE'er, efterhånden som de offentliggøres.
5. Registreredes rettigheder (kapitel III GDPR)
Vi faciliterer udøvelsen af alle registreredes rettigheder:
POST /api/v1/dsar/erase/by-email som pseudonymiserer på tværs af alle PII-tabeller. Bemærk: revisionsdata opbevares i 6 år i henhold til art. 17(3)(b) om tilsidesættelse ved retlig forpligtelse.6. Samtykkehåndtering
Nyhedsbrev: Eksplicit opt-in-samtykke er påkrævet. Samtykkens tidsstempel og IP-adresse registreres. Afmeldingslink i al kommunikation. Samtykke kan til enhver tid tilbagekaldes uden at påvirke adgangen til tjenesten.
Servicevilkår: Oprettelse af konto udgør accept af servicevilkårene (kontraktligt grundlag). Brugere informeres under tilmelding om databehandling.
Cookies: Et cookiesamtykke-banner vises ved første besøg i overensstemmelse med ePrivacy-direktivet. Brugere kan vælge udelukkende nødvendige cookies eller alle cookies. Præferencer gemmes lokalt og kan ændres til enhver tid.
7. Procedurer ved databrud (art. 33-34)
Automatiseret registrering: En brudovervågnings-worker kører hvert 5. minut mod revisionsloggen og markerer uregelmæssigheder som potentielle hændelser:
- ≥10 mislykkede loginforsøg for én e-mailadresse inden for 1 time
- ≥5 forskellige kilde-IP'er rettet mod én e-mail inden for 24 timer
- Vellykket login fra en kilde-IP, der ikke tidligere er set for den pågældende bruger inden for de seneste 30 dage
- HTTP 5xx-fejlrate > 5% over et 5-minutters vindue
- Postgres-fejl "column / relation does not exist" (schemadrift, App Insights)
- /health/db-write probe-fejl (læse+skrive-tjek ved hvert deploy og løbende)
Brudsregister: Enhver registreret uregelmæssighed skrives til breach_register tabellen med en tilstandsmaskine (registreret → undersøges → bekræftet → notificeret → lukket), alvorlighed, omfang, berørte registrerede, DPC-deadline-nedtælling og revisionshistorik. Synlig i SuperAdmin-panelet "Brudsregister".
Alarmrouting: Registreringshændelser routes til Azure Monitor Action Group yardtwin-breach-actions, som sender e-mail til admin@yardtwin.com samt de registrerede vagtadresser. Schemadrift-hændelser anvender den eksisterende yardtwin-schema-drift-actions gruppe.
Vurdering: Inden for 24 timer efter registrering triagerer det tekniske team hændelsen i brudsregisterpanelet: omfang, berørte registrerede, alvorlighed (art. 33(1)-kriteriet "risiko for rettigheder og friheder") og grundårsag.
Underretning af DPC (art. 33): Inden for 72 timer efter at være blevet opmærksom på et brud, der udgør en risiko. Brudsregisterpanelet viser en live 72-timers nedtællingstimer, når hændelsen markeres bekræftet.
Underretning af registrerede (art. 34): Uden unødig forsinkelse, hvis bruddet udgør en høj risiko for de registreredes rettigheder og friheder.
Underretning af kunder: Berørte lejeradministratorer underrettes inden for 48 timer efter bekræftelse af et brud, der påvirker deres lejers data.
Dokumentation: Alle poster i brudregisteret opbevares i platformens levetid plus 6 år (revisionsopbevaring), uanset om ekstern underretning var påkrævet.
8. Underdatabehandlere
| Underdatabehandler | Formål | Placering | Sikkerhedsforanstaltninger |
|---|---|---|---|
| Microsoft Azure | Skyinfrastruktur (App Service, Postgres, Blob, Key Vault, App Insights) | EEA (Sverige Central + Norge Øst) | Microsoft Online Services DPA + EU SCCs, ISO 27001, SOC 2 Type II |
| Stripe | Abonnementsfakturering og betalingsbehandling | Stripe Ireland (EEA), noget US-support | Stripe DPA + SCCs + PCI DSS |
| Resend | Transaktionel e-mail (velkomst, prøveperiodepåmindelser, DSAR-svar) | USA (Delaware) | DPA + SCCs (verificering igangværende) |
| Google Cloud Vision | OCR af kørekort (når kunden aktiverer kørekortsverificering) | EU-regioner | Google Cloud DPA + EU SCCs, ISO 27001, SOC 2 |
| Google / Microsoft (OAuth SSO) | Single sign-on-identitetstokens til brugere, der vælger SSO | EEA (Microsoft Entra ID), Global (Google Workspace) | Microsoft / Google Cloud DPA'er |
| Anthropic | Claude API til produktintegreret AI-assistent + tekstparsing af kørekort-OCR | USA (Californien) | Anthropic DPA + nul-opbevaringskrav + SCCs |
Kunder vil blive underrettet 30 dage, inden en ny underdatabehandler tilføjes.
9. Konsekvensanalyse for databeskyttelse (DPIA)
Vi gennemfører DPIA'er for behandlingsaktiviteter, der indebærer høj risiko for de registrerede. Da YARDtwin primært behandler operationelle forretningsdata (dockplaner, transportørnavne, køretøjsregistreringer) frem for følsomme personoplysninger, er risikoprofilen moderat. DPIA'er er gennemført for: behandling af revisionsspor, analyse på tværs af lejere (platformsadministratormodul) samt administration af nyhedsbrevsabonnenter.
10. Databeskyttelse via design og standardindstillinger (art. 25)
Via design: Multilejers-arkitektur med obligatorisk lejer-isolation. RBAC indbygget i hvert API-endpoint. Adgangskoder gemmes aldrig i klartekst. Minimal dataindsamling på hvert trin.
Som standard: Nye konti har minimale rettigheder. Valgfrie felter er reelt valgfrie. Nyhedsbrev kræver aktivt samtykke. Datasynlighed begrænset af rolle.
11. Overholdelsesstatus og løbende forbedringer
Løst (pr. maj 2026)
- ✓ Migrering til PostgreSQL Flexible Server (Azure-administreret, transparent datakryptering i hvile, 7-dages point-in-time-gendannelse)
- ✓ Migrering til Microsoft Azure (Sverige Central + Norge Øst, EEA) med App Service + ACR + Key Vault
- ✓ Hemmelighedshåndtering via Azure Key Vault (ingen hemmeligheder i .env eller container-images; managed-identity-adgang)
- ✓ Automatiseret DSAR-autoeksport (POST /api/v1/dsar/export/by-email — art. 15 / 20)
- ✓ Automatiseret DSAR-autosletning (POST /api/v1/dsar/erase/by-email — art. 17 med overholdelse af revisionsopbevaring)
- ✓ Cookiebanner v2 med fire kategorier (nødvendige / funktionelle / analyse / marketing) samt Afvis / Tilpas / Accepter alle
- ✓ Revisionering af isolation på tværs af lejere automatiseret; 25/25 adgangsvektorer på tværs af lejere blokeret, regressionstestet ved hvert release
- ✓ CI/CD-sikkerhedspipeline: npm audit + Trivy + Semgrep + gitleaks + ZAP DAST
- ✓ Schema-drift-varsling på Application Insights (15-minutters vindue)
- ✓ End-to-end /health/db-write-probe verificerer skrivbar DB ved hver udrulning
- ✓ App Insights schema-drift Action Group sender e-mail til vagtadressen ved Postgres-fejl af typen "column / relation does not exist"
- ✓ Feltniveau-kryptering (AES-256-GCM) for biometriske data (billeder af kørekort, signature_data)
- ✓ Automatiseret oprydning ved dataopbevaringsgrænse (konfigurerbar pr. site; pii-cleanup-worker)
- ✓ 30-dages prøveperiode harmoniseret overalt (tilmelding, marketingside, vilkår, e-mails)
- ✓ End-to-end regressionstest med 5.000 lastbiler dækker alle Site Admin-endepunkter med yard-view-fidelitetspåstande ved hver overgang (53.650/53.651 = 100 %)
- ✓ Datainventar og fortegnelse over behandlingsaktiviteter (Art. 30) offentliggjort
- ✓ Register over underdatabehandlere vedligeholdes og gennemgås årligt
- ✓ Privacy by design og privacy by default dokumenteret (Art. 25)
- ✓ Web Application Firewall (Azure Front Door + managed WAF) beskytter yardtwin.com med OWASP Core Rule Set, botbeskyttelse og L7 DDoS-afbødning
- ✓ Automatiseret bruddetektering — auth-anomaly-worker (spidsbelastning af mislykkede logins, multi-IP-angreb, logins med landeskift), 5xx-ratevarsler, schema-drift-varsler og /health/db-write-probe
- ✓ Brudregister persistent tabel med fuld tilstandsmaskine og DPC-deadline-nedtælling, synlig i SuperAdmin-panelet
- ✓ Action Group
yardtwin-breach-actionssender e-mail til admin@yardtwin.com og vagtadresser ved hver detektion
Tilbageværende forbedringer
Der er ikke gennemført en tredjeparts-penetrationstest. Opgaven er afgrænset (Cobalt.io, ca. €6–8k for webapp + autentificeret test). Intern testning har afklaret 27 fund til dato. Prioritet: Høj. Mål: Q3 2026.
En ekstern deltids-DPO vil blive kontraheret inden den første betalende farmaceutiske virksomhedskunde. Påkrævet for troværdig leverandøronboarding, selv hvor det ikke er strengt påkrævet af Art. 37. Prioritet: Høj. Mål: Inden første betalende virksomhedskunde.
Skelet til Statement of Applicability er færdigt og kortlægger alle 93 Annex A-kontroller (~32 PÅ PLADS, ~25 DELVIS, ~22 GAP, ~14 N/A). Engagement af ekstern lead-auditor er næste skridt; fuld certificeringssti er 9–12 måneder. Prioritet: Medium. Mål: Q4 2026 — certificeringsaudit Q1 2027.
Påkrævet for amerikanske virksomhedskunder. Bedst forfulgt efter ISO 27001 er på plads — de fleste kontroller overlapper. Prioritet: Medium. Mål: 2027.
YARDtwin kører på Azure App Service med point-in-time-sikkerhedskopiering (7-dages vindue), men er enkelt-region. En geo-redundant sekundær i en anden EØS-region kan reducere RTO fra timer til minutter ved regionsniveaufejl. Prioritet: Medium. Mål: Q4 2026.
Begge underdatabehandlere overfører data til USA under SCC'er. Skriftlig bekræftelse af supplerende foranstaltninger til FISA 702 indsamles som led i den årlige gennemgang af underdatabehandlere. Prioritet: Medium. Mål: Q3 2026.
Et privat bug bounty-program (HackerOne / Intigriti) er planlagt efter den anden rene eksterne penetrationstest og giver kontinuerlig ekstern dækning mellem årlige tests. Prioritet: Lav. Mål: 2027.
12. Kontakt & Databeskyttelsesrådgiver
Databeskyttelsesrådgiver: dpo@yardtwin.com — en ekstern deltids-DPO er ved at blive kontraheret (se 11.2); indtil ansættelse videresendes mail til denne adresse til admin@yardtwin.com til behandling.
Generelle henvendelser: admin@yardtwin.com
Registreredes anmodninger: Indsend via vores DSAR Portal
Databehandleraftale: Gennemse og accepter på /dpa
Tilsynsmyndighed: Data Protection Commission (DPC), Irland · www.dataprotection.ie · +353 (0)761 104 800