Документация

К списку статей
33. Регламент (SOP) ротации ANON_SALT — шаблон

Тип: ОРД-артефакт под утверждение (D? / §8 ЧМУ — «регламент ротации соли»). Формализует уже реализованный инструмент в эксплуатационную процедуру с окном обслуживания и проверкой. Назначение: безопасно сменить мастер-ключ псевдонимизации ANON_SALT без разрыва связки портал ↔ Сейф (все user_id пересчитываются согласованно). Связано: 23 — техника ротации (механизм), 01 — крипто, 34 — бэкап, vault-service/app/rotate_salt.py (инструмент).

Техническая основа уже в продукте: rotate_salt.py строит карту old→new по табельным под новой солью и применяет один UPDATE к порталу и Сейфу (dry-run по умолчанию). Этот документ — регламент: КОГДА, КТО и в каком порядке его запускает.

1. Когда ротировать
  • Плановая ротация — раз в ‹12 месяцев›;
  • внеплановая — при компрометации/подозрении на утечку ANON_SALT (инцидент, 32);
  • при смене подрядчика/администратора, имевшего доступ к секрету.
2. Предусловия
  • Свежий бэкап обеих БД (портал + Сейф) — 34, 27;
  • сгенерирован новый секрет NEW_ANON_SALT (стойкий, вне БД/логов/git);
  • окно обслуживания ‹длительность›; на время ротации сбор телеметрии приостановлен (иначе новые

факты придут под старой солью).

3. Порядок (по шагам)
  1. Dry-run (без записи) — оценить охват:

NEW_ANON_SALT=‹новый› python -m app.rotate_salt (в контуре Сейфа). Сверить число строк.

  1. Применить: NEW_ANON_SALT=‹новый› python -m app.rotate_salt --apply (или ROTATE_CONFIRM=1).

Инструмент в одной логике пересчитывает user_id во ВСЕХ таблицах портала и Сейфа.

  1. Обновить секрет окружения: заменить ANON_SALT на новое значение в конфигурации Сейфа/

коллектора (там, где идёт токенизация); портал соль не хранит (F3b).

  1. Перезапустить коллектор/Сейф с новым ANON_SALT; возобновить сбор.
4. Проверка после ротации
  • Связка цела: раскрытие user_id ↔ человек (DPO) возвращает корректное ФИО;
  • инвариант метрик не изменился (число фактов/связок стабильно — пересчитан только идентификатор);
  • новые прогоны коллектора пишут user_id под новой солью (совпадают с пересчитанными в Сейфе).
5. Откат

При расхождении — восстановить обе БД из бэкапа п. 2 (27) и вернуть прежний ANON_SALT. Нельзя оставлять портал и Сейф под разными солями — связка порвётся.


Ответственный: ‹DPO/администратор ИБ›. Утверждение: ‹приказ № / дата›.