Зберігання та видалення даних користувача
1) Навіщо потрібна політика зберігання і видалення
Мета - зберігати тільки потрібні дані, рівно стільки, скільки потрібно, і безпечно видаляти їх після закінчення цілей обробки. Це знижує юридичні ризики, поверхню атаки, витрати на інфраструктуру і спрощує аудит (ліцензії, PSP-партнери, регулятори).
Ключові принципи:- Прив'язка до мети/основи (договір, закон, легітимний інтерес, згода).
- Мінімізація та сегрегація (PII ↔ псевдоніми ↔ анонім).
- Передбачувані терміни і доказові процедури видалення.
- Безперервний контроль (логи, звіти, метрики).
2) Зони даних та архітектурні опори
Zone A - PII/чутливі: KYC, платіжні токени, біометрія (де допустимо). Шифрування at-rest, строгий RBAC/ABAC, JIT-доступи.
Zone B - Псевдонімізовані: стабільні токени для аналітики/ML; заборона прямої де-ідентифікації.
Zone C - Анонімні агрегати: звітність/дослідження; допускається довгий термін зберігання.
- Data Catalog/RoPA (реєстр операцій), Retention Service (правила), Deletion Orchestrator (наскрізне видалення), WORM-архів (аудит/інциденти).
3) Ретеншн-матриця: Як складати
Кроки:1. Зіставте цілі обробки ↔ правові підстави ↔ категорії даних ↔ терміни.
2. Опишіть тригери початку відліку (події: створення обліку, останній логін, закриття аккаунта, закінчення договору, фінальна транзакція).
3. Зафіксуйте метод після закінчення: видалення, анонімізація, блокування (коли потрібен «фриз»).
4. Вкажіть власника та виключення (AML/податки/суперечки/шахрайство).
Приклад (для wiki):4) Політика зберігання (скелет)
1. Область дії, ролі (власник даних, DPO, Security, Operations).
2. Визначення (категорії ПД, зони, архів, бекап, анонімізація/псевдонімізація).
3. Прив'язка даних до цілей/підстав і термінів (посилання на ретеншн-матрицю).
4. Управління винятками (юридичний «холд», розслідування, регуляторні запити).
5. Контролі доступу, шифрування, аудит вивантажень.
6. Порядок перегляду (щоквартально/при змінах цілей/провайдерів).
5) Пайплайн видалення і анонімізації
Етапи:- Mark-for-Deletion: позначка записів і залежностей; перевірка «холдів».
- Grace Period: буфер (наприклад, 7-30 днів) для скасування помилково.
- Soft Delete: логічне приховування з прод-сервісів; зупинка розсилок/обробок.
- Hard Delete/Anonymize: фізичне очищення/необоротна анонімізація в первинному сховищі.
- Cascade & Fan-out: каскад в деривативи (кеші, пошукові індекси, фіче-стор, DWH, ML-шари).
- Backups: відкладене очищення по політиці бекапів (див. нижче).
- Evidence: акт видалення (ID, класифікатор, час, системи), лог в WORM.
- Видалення по ключу суб'єкта з трасуванням по lineage.
- Ідемпотентні завдання, ретраї, дедуплікація команд.
- SLA: більшість видалень ≤30 днів від запиту (якщо застосовується).
- Контроль «невдалюваних» полів: замінювати токенами/маскою.
6) Бекапи і репліки: Що робити з копіями
Іммутабельні бекапи (ransomware-стійкість) зберігаються за окремою політикою; пряме редагування заборонено.
Видалення суб'єкта з бекапів виконується через закінчення терміну бекапа і заборону відновлень в бойове оточення, якщо це призводить до ре-ідентифікації.
Документуйте: window зберігання бекапів (наприклад, 30/60/90 днів), сценарії відновлення і процес «sanitization» при відновленні (пост-скрипти для повторного видалення зазначених записів).
7) Винятки і «правовий холд»
Іноді видалення не можна виконати відразу (наприклад, AML, податкові перевірки, судові спори). Процедура:- Проставити Legal Hold із зазначенням підстави, терміну і власника.
- Блокувати доступ до даних для будь-яких інших цілей, крім зазначених.
- Періодично переглядати холди і знімати, як тільки підстава відпадає.
8) Документація та артефакти
Ретеншн-матриця (версіонована).
Процедура видалення (SOP): кроки, ролі, SLA, ескалації.
Deletion Evidence Log (WORM): хто/що/коли/результат.
Backups Policy: терміни, клас сховища, тести відновлення.
Data Lineage Map: від первинних таблиць до похідних шарів.
Винятки/Legal Holds Register.
9) Метрики та контроль якості
Retention Adherence: % записів, видалених за графіком.
Deletion SLA: медіана/95-й перцентиль з моменту запиту/тригера.
Cascade Completion Rate: частка систем, де видалення завершено.
Backups Window Compliance: частка бекапів, видалених за терміном.
Access/Export Violations: несанкціоновані читання/вивантаження.
DSR SLA (якщо застосовується): відповіді ≤ встановлених термінів.
Incident Rate: кількість збоїв видалення/розсинхронізацій.
10) Чек-листи (операційні)
Перед запуском фічі
- Визначена мета/основа обробки і зона зберігання (A/B/C).
- Додано рядок в ретеншн-матрицю (термін, тригер, метод).
- Налаштований Deletion Orchestrator (ключі, каскади, idempotency).
- Включено аудит (WORM-логи), оновлено RoPA.
Щодня/щотижня
- Планувальник завдань видалення відпрацював без помилок.
- Нові Legal Holds зареєстровані, прострочені - зняті.
- Перевірені звіти по бекапах (створення/закінчення).
Щоквартально
- Рев'ю ретеншн-матриці і винятків.
- Тест відновлення з бекапа + «sanitization» скриптів.
- Звірка метрик (SLA, Cascade, Violations), план поліпшень.
11) Часті помилки і як їх уникнути
Зберігання «про запас» → жорстка прив'язка до цілей; автоматичний TTL за категоріями.
Немає каскаду → дані залишаються в кешах/індексах/фіче-сторі; впроваджуйте універсальний оркестратор.
Dev/Stage з прод-ПД → використовуйте синтетичні набори/маскування; автоматичне випилювання дампів.
Бекапи поза політикою → визначте вікна, заборону несанкціонованих відновлень, тести «sanitization».
Відсутність доказів → WORM-лог, акти видалення, регулярні звіти.
Змішування підстав → поділяйте маркетинг/безпеку/договір; не тягніть терміни «про всяк випадок».
12) Приклад користувацького видалення (наскрізний сценарій)
1. Користувач закриває обліковий запис або подає DSR на видалення.
2. Перевірка винятків (AML, спори) → за наявності - Legal Hold з обмеженням цілей.
3. Якщо немає холда: Mark-for-Deletion → Grace 14 дней → Soft Delete.
4. Hard Delete/Anonymize в транзакційному шарі, потім каскад в кеші, індекси, DWH, ML-фіче-стор.
5. Логування в Evidence Log, оновлення статусу в профілі/поштою.
6. Очищення з бекапів після закінчення вікна зберігання.
13) Ролі та відповідальність (RACI)
Data Owner/Domain Lead - терміни і цілі; оновлення ретеншн-матриці.
DPO/Privacy - відповідність праву, консультації за винятками.
Security/CISO - шифрування, доступи, аудит, бекапи/відновлення.
Data Engineering — Deletion Orchestrator, lineage, каскады.
Support/Operations - комунікації по DSR, статус і SLA.
Legal - юридичні холди, взаємодія з регуляторами/судами.
14) Шаблони для вашої wiki
Retention-Matrix. xlsx/MD (категорія → мета → підстава → термін → метод).
Deletion-SOP. md (покроковий регламент з ескалаціями).
Backups-Policy. md (вікна, класи сховищ, тест-план відновлення).
Legal-Holds-Register. md (форми постановки/зняття).
Data-Lineage-Diagram (посилання з таблиць на деривативи).
Monthly-Privacy-Ops-Report. md (метрики, інциденти, поліпшення).
15) Дорожня карта впровадження (6 кроків)
1. Інвентаризація: карта даних/потоків, зіставлення цілей і підстав.
2. Ретеншн-матриця: чернетка термінів + власники; узгодження з Legal/DPO.
3. Оркестратор вилучень: ключі, каскади, бекап-санітизація, WORM-логи.
4. Політики/процедури: Retention Policy, Deletion SOP, Backups Policy, Legal Hold.
5. Автоматизація та моніторинг: розклади, оповіщення, дашборд метрик.
6. Аудити та навчання: квартальний перегляд, темплейти актів, тренування відновлення.
Підсумок
Ефективне зберігання і видалення даних - це керований цикл: мета → термін → контроль → безпечне видалення/анонімізація → доказовість. Сегрегація зон, ретеншн-матриця, каскадне видалення (включаючи бекапи), зрозумілі винятки і метрики перетворюють приватність і комплаєнс з ризику в конкурентну перевагу - без втрат для швидкості продукту і якості UX.