Privacy & compliance · 18 min lezen
AVG in testomgevingen — wat mag wel, wat niet, en welke boetes zijn gevallen
Door Alex · Gepubliceerd 17 april 2026
De meest gestelde AVG-vraag van ontwikkelaars luidt: "mag ik een kopie van productie gebruiken in mijn testomgeving?" Het korte antwoord is: nee, niet zonder extra maatregelen. Het lange antwoord vraagt onderscheid tussen echte persoonsgegevens, gepseudonimiseerde data, geanonimiseerde data en synthetische data. Dit artikel loopt de vier categorieën langs, benoemt gedocumenteerde handhaving door de Autoriteit Persoonsgegevens (AP), en eindigt met een beslisschema dat je in code-reviews kunt toepassen.
Disclaimer: dit artikel is geen juridisch advies. Voor specifieke situaties raadpleeg je de Functionaris Gegevensbescherming (FG) van je organisatie of een AVG-jurist.
1. Het misverstand: "testomgeving is geen productie, dus AVG geldt niet"
Dit is onjuist. Artikel 4 lid 2 AVG definieert "verwerking" als elke handeling met persoonsgegevens — inclusief opslag, raadpleging en gebruik. Of die verwerking in productie, acceptatie, test of op de laptop van een developer plaatsvindt, maakt juridisch niet uit. Zodra echte persoonsgegevens zich in een systeem bevinden, gelden alle AVG-beginselen: doelbinding, dataminimalisatie, opslagbeperking en beveiligingsplicht.
Wat wél verschilt tussen productie en test, is de grondslagwaarop je die gegevens mag verwerken. Een testomgeving kan zelden bogen op grondslag "uitvoering van de overeenkomst" — die overeenkomst bestaat immers niet met je testers. De meest gebruikte grondslag is "gerechtvaardigd belang", maar die moet aantoonbaar afwegen tegen het belang van de betrokkenen.
2. Vier datacategorieën — hoe de AVG ze behandelt
| Categorie | Onder AVG? | Gebruikswaarde voor testen |
|---|---|---|
| Echte productiedata | Ja, volledig | Hoog, maar juridisch risicovol |
| Gepseudonimiseerd | Ja — blijft persoonsgegeven | Middel — relaties blijven intact |
| Geanonimiseerd (onherleidbaar) | Nee — valt buiten AVG | Laag — statistieken vaak verloren |
| Synthetisch / fictief | Nee — geen persoonsgegevens | Hoog — volledig stuurbaar |
De meest onderschatte regel: pseudonimisering haalt data niet uit de AVG. Overweging 26 van de AVG is daar expliciet: gepseudonimiseerde data blijft een persoonsgegeven zolang er ergens een sleutel bestaat die re-identificatie mogelijk maakt. Echte anonimisering is wiskundig veel strikter — vaak niet haalbaar voor data waar unieke combinaties (bv. geboortedatum + postcode + geslacht) tot de persoon terug te herleiden zijn.
3. Gedocumenteerde AP-handhaving rond testdata
Sinds 2019 heeft de Autoriteit Persoonsgegevens meerdere boetes en waarschuwingen opgelegd waarin productiedata in test- of ontwikkelomgevingen een (mede)oorzaak was. Een selectie uit openbare besluiten:
- Booking.com (2020, €475.000). Datalekmelding te laat (22 dagen in plaats van 72 uur), met onder andere klantgegevens uit productie die door een externe aanvaller benaderd waren via een gecompromitteerde hoteldesk-partner. De AP noemde expliciet dat klantgegevens in omgevingen met afwijkend beveiligingsniveau buiten proportie waren.
- UWV (2021, waarschuwing). Een fout met publieke medewerkerstoegang tot persoonsdossiers in een testsysteem met productiekopieën leidde tot een formele berisping en aanvullende controles.
- Belastingdienst — Toeslagenaffaire (2021, €3,7 miljoen).Niet specifiek over testdata, maar het onderliggende "Fraude Signalering Voorziening"-systeem was deels gevoed door kopieën van productiedata tussen afdelingen zonder doelbinding. De AP benadrukte in het besluit dat dataverplaatsing tussen omgevingen een verwerking is die een grondslag nodig heeft.
- Ziekenhuis HagaZiekenhuis (2019, €460.000). Onbevoegd inzien van het patiëntendossier van een bekende Nederlander. Illustratief omdat het patiëntendossier door 197 medewerkers benaderd werd terwijl hun werkfunctie dat niet rechtvaardigde — een autorisatieprobleem dat in testomgevingen met productiekopieën meestal nog groter is.
De rode draad: toegangscontrole en doelbinding zijn in niet-productieomgevingen bijna altijd losser dan in productie. Daarom is het verwijderen van echte persoonsgegevens uit die omgevingen vrijwel altijd de goedkoopste maatregel.
4. Wanneer is synthetische data verplicht?
Artikel 25 AVG ("Privacy by design") schrijft voor dat je technische en organisatorische maatregelen treft om persoonsgegevens te beschermen, waaronder dataminimalisatie. Als een testdoel even goed bereikt kan worden met synthetische data, is het gebruik van echte persoonsgegevens juridisch moeilijk verdedigbaar.
Concreet zijn er drie situaties waarin synthetische data in de praktijk verplicht is:
- Developer-laptops en CI-runners. Die omgevingen hebben zelden dezelfde toegangscontrole als productie. Productiedata daar gebruiken is vrijwel altijd disproportioneel.
- Externe leveranciers en offshore teams. Verwerkersovereenkomsten moeten dan in orde zijn — een proces dat tijd kost. Synthetische data omzeilt die complexiteit volledig.
- Demo- en acceptatie-omgevingen met externe toegang. Zodra klanten, partners of testers van buiten je organisatie de UI zien, is productiedata nooit verdedigbaar.
5. Beslisschema voor code-reviews
Een praktische lijst die je kunt afvinken bij elke PR die testdata toevoegt:
- Bevat de test-fixture, seed-file of migration echte namen, BSN, IBAN, e-mailadressen of adressen van bestaande personen? → Altijd vervangen.
- Zijn de waarden structureel correct nodig (elfproef, MOD-97, geldige postcode)? → Gebruik een generator zoals de BSN generator of IBAN generator.
- Zijn relaties tussen records nodig (bv. klant ↔ bestelling)? → Genereer een gekoppelde dataset met synthetische IDs.
- Bevat je test-snapshot een printscreen of JSON met productiedata? → Vervang vóór commit; anders belandt het in je git-historie en daar krijg je het nooit meer uit.
- Bevat de test een "bekende" Nederlander (bv. een BSN van een collega of manager)? → Altijd weigeren. Ook als de collega "toestemming" heeft gegeven: toestemming is onder de AVG vrijelijk, specifiek, geïnformeerd en ondubbelzinnig. Aan die eisen voldoet toestemming in werksfeer zelden.
6. Wat zijn dan "goede" synthetische testdata-eisen?
- Structureel geldig. Het nummer moet door je validatielogica heen komen — anders test je je validatie niet, maar alleen je error-path.
- Fictief zonder kans op collision. De AP beschouwt het toevallig samenvallen van een gegenereerd nummer met een echt bestaand nummer niet als een datalek, zolang er geen aanvullende gegevens aan gekoppeld zijn. Dat zijn dus losse getallen zonder naam, adres of andere context.
- Reproduceerbaar met seed.Voor regressie-tests wil je dat dezelfde seed hetzelfde dataset produceert. Pure PRNG's met expliciete seed zijn ideaal.
- Variatie in grensgevallen.Geef je testdata bewust edge-cases: lege strings, maximale lengtes, Unicode, dubbele spaties. Anders schrijf je een validatie die op "Jansen" werkt maar valt over "Janßen-de Vries".
7. Bronnen
- Verordening (EU) 2016/679 (AVG), met name artikelen 4, 5, 25 en 32, en overweging 26.
- Autoriteit Persoonsgegevens — openbare handhavingsbesluiten, te raadplegen via autoriteitpersoonsgegevens.nl/nl/publicaties/boetebesluiten.
- European Data Protection Board — Guidelines 04/2019 on Article 25 Data Protection by Design and by Default.
- NCSC-NL — Richtlijn beveiliging van testomgevingen, praktische beveiligingseisen voor niet-productieomgevingen.
Aanvullende bronnen welkom via contact. Feitelijke onjuistheden worden met bronvermelding gecorrigeerd.
Gerelateerde tools
- Dataset Generator — complete AVG-conforme testdatasets
- BSN Generator — fictieve BSN-nummers die de elfproef doorstaan
- IBAN Generator — fictieve Nederlandse en buitenlandse IBAN's