MOD-PII — Защита персональных данных
Лицензия: Бесплатный, входит в базовую поставку ядра
Модуль отвечает за то, чтобы персональные данные не покидали периметр в сыром виде. Он находит чувствительное в тексте и в структурах, обезличивает его по политике выбранного контекста (экспорт, индексация, показ, федерация, событие) и складывает исходные значения в шифрованное хранилище токенов. Обратная операция — расшифровка — возможна, но только по праву R-PII-UNMASK, с обязательной причиной и под лимиты, и каждый раскрытый токен попадает в журнал операций.
Модуль включён в базовую поставку не из щедрости, а по устройству ядра: чат перед каждым обращением к внешней модели делает pii__check_ready и pii__ensure_masked и работает fail-closed — если модуль недоступен, вызов внешней LLM запрещается, деградированного режима не предусмотрено. Поэтому лицензия на MOD-PII выпускается автоматически вместе с лицензией на ядро и отдельно не покупается.
Вторая половина модуля — комплаенс: журнал согласий субъектов на цели обработки, заявки DSAR (доступ, экспорт, исправление, удаление) со сроками SLA, правила хранения, карта охвата по модулям-владельцам и перепроверяемый отчёт, где каждая цифра сопровождается ссылкой на породивший её запрос.
Возможности
- Детекция ПДн в тексте со спанами и уверенностью; пакетный горячий путь для воркеров модулей-владельцев
- Стратегии обезличивания: токенизация, маскирование, вычёркивание, обобщение и полный запрет
- Политики «контекст × категория → стратегия» с версиями и пользовательскими категориями
- Собственные правила детекции: regex обязан пройти свой test_set (позитивы ловятся, негативы — нет)
- Словарь имён с пятислойной валидацией, импорт CSV только после обязательного dry-run, словарь организации с синхронизацией из MOD-CRM и MOD-DEV-PROJECT
- Хранилище токенов: статистика, мягкий отзыв, необратимый purge под двойное подтверждение, ротация ключей и версии шифрования
- Расшифровка под контролем: право R-PII-UNMASK, причина не короче 10 символов, лимиты на вызов, час и сутки, запись каждого токена в журнал
- Согласия (append-only), DSAR со сбором, экспортом, исполнением и отклонением, правила хранения
- Реестр покрытия: регистрация модулей-владельцев, скан охвата, непокрытые поля, очерёдность бэкфила
- Локальные LLM-модели для разметки: реестр, health, промпты с версиями и A/B, прогон по тест-сету
- Очередь заданий и бэкфил с dead-letter, повторами и reconciliation
- Отчёт о соответствии: покрытие, доля согласий, SLA по DSAR, утечки, активность расшифровок, экспозиция в LLM
Основные MCP-инструменты
| Инструмент | Назначение |
|---|---|
pii__detect | Найти чувствительное в тексте: сущности со спанами и уверенностью |
pii__detect_batch | Пакетная детекция горячего пути: маскирование и токены хранилища |
pii__mask_value | Обезличить одно значение по стратегии |
pii__mask_payload | Обезличить структуру по политике контекста |
pii__check_ready | Pre-flight перед внешним LLM-вызовом: статусы полей и признак all_ready |
pii__ensure_masked | Экстренно довести поля до готовности; ответ — batch_id и оценка времени |
pii__llm_guard | Единственная разрешённая точка внешнего LLM-вызова: pre-flight плюс экстренное обезличивание |
pii__unmask_text | Восстановить текст из ответа внешней модели по праву R-PII-UNMASK с причиной и лимитами |
pii__policy.upsert | Задать стратегию для пары «контекст × категория» |
pii__rule.upsert | Добавить правило детекции с обязательным test_set |
pii__consent.grant | Зафиксировать согласие субъекта на цель обработки |
pii__dsar.create | Завести DSAR-заявку со сроком SLA |
pii__dsar.execute | Исполнить DSAR: исправление или удаление под двойное подтверждение |
pii__vault.purge | Необратимо стереть шифротекст токенов (право на забвение) |
pii__keys.rotate | Ротация ключа шифрования и HMAC |
pii__register_module | Зарегистрировать модуль-владелец в реестре покрытия |
pii__compliance_report | Отчёт о соответствии, где каждая цифра со ссылкой на запрос |
Блоки холста
Модуль headless: собственных блоков в библиотеку MOD-CANVAS он не поставляет (describe_blocks возвращает пустой список). Панель модуля собирается из готовых блоков библиотеки — модуль отдаёт набор пресетов холстов по ролям.
Связанные модули
- MOD-CHAT — чат, который fail-closed проверяет готовность данных перед внешней моделью
- MOD-NL — разбор фраз пользователя, идущий тем же защищённым путём
- MOD-RAG — индексация знаний, для которой применяется контекст «index»
- MOD-CRM — источник контрагентов для словаря организации
- MOD-CANVAS — холсты, из блоков которых собрана панель модуля