Персональні дані - будь-яка інформація, за якою можна ідентифікувати людину: ім'я, email, телефон, IP-адреса, ідентифікатор пристрою, геолокація, історія замовлень. Принципи GDPR (стаття 5), на які орієнтуються й українське законодавство, і більшість сучасних регуляцій:
1. Мінімізація даних - збирати лише те, що потрібно для конкретної мети. Не просити дату народження, якщо достатньо підтвердити вік; не зберігати повний номер картки, якщо потрібні останні 4 цифри.
2. Обмеження мети - дані, зібрані для доставки замовлення, не використовуються для розсилки без окремої згоди.
3. Обмеження зберігання - дані зберігаються не довше, ніж потрібно. Неактивні облікові записи, старі журнали з IP-адресами, логи запитів - видаляються чи анонімізуються за розкладом (у Laravel - Prunable/MassPrunable моделі й запланована model:prune).
4. Точність - користувач може виправити свої дані.
5. Цілісність і конфіденційність - захист від несанкціонованого доступу: шифрування, контроль доступу, журнали дій.
6. Законність і прозорість - зрозуміла політика конфіденційності, правова підстава обробки (згода, договір, законний інтерес).
Що це означає в коді:
- права користувача: експорт своїх даних, видалення облікового запису (з даними, що за ним стоять, - включно з резервними копіями за розумний час), відкликання згоди;
- персональні дані не потрапляють у журнали й системи моніторингу без потреби (маскування email, телефонів, токенів);
- розділення доступу: не всі співробітники бачать усі дані; адмінка з журналом переглядів чутливих записів;
- шифрування особливо чутливих полів (документи, медичні дані) - каст
encryptedу Laravel; - тестові дані: не копіювати продакшен-базу з реальними людьми на ноутбуки розробників без анонімізації;
- сторонні сервіси (аналітика, CRM, LLM) отримують лише потрібне, з договором обробки даних.
Витік персональних даних - юридична подія: GDPR вимагає повідомити наглядовий орган протягом 72 годин після виявлення, якщо витік несе ризик для людей. План дій має бути готовий заздалегідь.