- května 2018 vstupuje v platnost GDPR. Právníci řeší souhlasy a smlouvy. Ale kdo řeší technickou implementaci? Šifrování dat at rest, audit logy, právo na výmaz v systému s 30 propojenými tabulkami — to je náš svět.
Co GDPR skutečně vyžaduje technicky¶
Článek 25 mluví o „ochraně údajů záměrně a standardně” (privacy by design and by default). Článek 32 požaduje „přiměřená technická a organizační opatření”. Co to znamená v praxi? Nařízení je záměrně vágní — nepředepisuje konkrétní technologie. Ale auditní praxe se rychle ustálí.
Z naší zkušenosti s přípravou enterprise systémů na GDPR identifikujeme 5 klíčových technických oblastí, které musí každý IT systém zpracovávající osobní údaje řešit.
1. Šifrování — at rest i in transit¶
In transit: TLS 1.2 minimum, ideálně TLS 1.3. Žádné self-signed certifikáty v produkci. mTLS pro service-to-service komunikaci. Let’s Encrypt eliminuje výmluvu „certifikáty jsou drahé”.
At rest: AES-256 pro databáze a úložiště. Azure SQL má Transparent Data Encryption (TDE) ve výchozím stavu. PostgreSQL vyžaduje pgcrypto nebo filesystem-level šifrování. Nezapomeňte na backupy — šifrovaná produkce a nešifrovaný backup je jako zamčené dveře s otevřeným oknem.
2. Pseudonymizace a anonymizace¶
GDPR explicitně zmiňuje pseudonymizaci jako doporučené opatření. Rozdíl je zásadní: pseudonymizace je reverzibilní (klíč existuje), anonymizace je nevratná (data přestanou být osobní údaje).
V praxi: produkční databáze používá pseudonymizované identifikátory. Mapping tabulka (pseudonym → reálná identita) je v separátním úložišti s přísnějším přístupem. Analytické systémy pracují s anonymizovanými daty — k-anonymity, l-diversity pro statistické výstupy.
3. Právo na výmaz — technický horor¶
Článek 17 — právo být zapomenut. Zní jednoduše. Implementace je noční můra. Uživatel v CRM systému má záznamy v 15 tabulkách, 3 mikroslužbách, 2 analytických systémech, 5 backupech a Elasticsearch indexu.
Náš přístup: Data Subject Registry — centrální evidence všech míst, kde se osobní údaje konkrétního subjektu nacházejí. Každý systém implementuje DELETE endpoint. Orchestrátor projde registry a zavolá výmaz ve správném pořadí (respektuje foreign keys).
Pro backupy: nemazat ze záloh (technicky nemožné u tape/immutable storage). Místo toho „crypto shredding” — data v zálohách jsou šifrovaná per-subject klíčem. Smažete klíč = data jsou nečitelná.
4. Audit logy a prokazatelnost¶
GDPR vyžaduje schopnost prokázat compliance. To znamená logovat: kdo přistoupil k jakým osobním údajům, kdy, proč a co s nimi udělal. Ale pozor — audit log sám o sobě obsahuje osobní údaje (kdo = zaměstnanec, co = údaje subjektu).
Řešení: strukturované audit logy s referencí na data subject (ne kopií dat). Centrální log management (ELK stack, Splunk). Immutable storage — logy nelze zpětně upravit. Retence logů odpovídá účelu — typicky 1-3 roky.
- Každý API call loguje: user_id, action, resource_type, resource_id, timestamp
- Citlivé hodnoty se nelogují — pouze reference
- Export logů pro DPA (Data Protection Authority) v strojově čitelném formátu
5. Data portability — strojově čitelný export¶
Článek 20 — subjekt má právo získat svá data ve „strukturovaném, běžně používaném a strojově čitelném formátu”. V praxi: JSON nebo CSV export všech osobních údajů. API endpoint, který vygeneruje kompletní datový balíček pro konkrétní subjekt.
Implementujte jako asynchronní operaci — generování exportu pro uživatele s bohatou historií může trvat minuty. Notifikace e-mailem s odkazem ke stažení. Link s omezenou platností (24-48h) a jednorázovým použitím.
Consent management — technická stránka¶
Souhlasy nejsou jen checkbox na webu. Technicky potřebujete: evidenci souhlasů s timestampem a verzí textu, API pro kontrolu platného souhlasu před zpracováním, mechanismus pro odvolání souhlasu s propagací do všech systémů.
Consent store jako samostatný microservice. Každé zpracování osobních údajů nejprve ověří platný souhlas. Odvolaný souhlas triggeruje event — downstream systémy reagují zastavením zpracování.
Privacy by Design v praxi¶
Minimalizace dat: sbírejte jen to, co potřebujete. Každé pole v databázi by mělo mít zdokumentovaný účel. Datum narození místo rodného čísla (pokud nepotřebujete RČ). E-mail místo telefonního čísla (pokud volat nebudete).
Data retention: automatický výmaz dat po uplynutí účelu. Objednávka splněna → osobní údaje smazat po zákonné archivační lhůtě (typicky 10 let pro účetní doklady). Scheduler, který denně kontroluje expirované záznamy.
GDPR není projekt — je to proces¶
Technická implementace GDPR není jednorázový úkol. Je to architekturní princip, který musí prostupovat každým novým systémem a každou změnou stávajícího. Privacy by design znamená myslet na ochranu dat od prvního řádku kódu — ne je přidávat jako afterthought před auditem.