Обработка персональных данных
Чекбокс согласия на ПД, способы включения, хранение логов, требования закона.
📜 Обработка персональных данных и согласие
Как работает согласие на обработку ПД на формах, где смотреть логи, как включить для своего проекта.
🔄 Как это работает
Чекбокс согласия на обработку ПД не добавляется автоматически на все формы. Его нужно явно включить одним из двух способов:
Способ 1. Колонка pd_consent в таблице данных
Если в таблице, к которой привязана форма, есть колонка pd_consent (INTEGER, DEFAULT 0), то чекбокс появляется автоматически. Значение сохраняется в БД (1 — согласие получено, 0 — нет).
Пример для prostostihi:
ALTER TABLE contacts ADD COLUMN pd_consent INTEGER DEFAULT 0;
→ Чекбокс появился, данные пишутся в таблицу contacts.
Способ 2. Опция consent_enabled в form_config
Если колонки в таблице нет, но чекбокс нужен — добавьте в form_config:
{
"consent_enabled": true,
"consent_required": true,
...
}
Галочка появится, данные будут только в логе (не в БД).
Параметры:
| Поле | По умолч. | Описание |
|------|-----------|----------|
| consent_enabled | false | Показывать чекбокс |
| consent_required | true | Делать чекбокс обязательным |
✅ Что нужно сделать на новом проекте
1. Создать страницу Политики конфиденциальности
-
Создать страницу в админке или вставить напрямую в таблицу
pages:- slug:
confidential - title: «Политика конфиденциальности»
- status:
active
- slug:
-
Шаблон
page.html.twigуже содержит стили для юридических документов. -
Типовой шаблон — в файлах проекта:
apidcms/confidential_template.md
2. Создать страницу Публичной оферты
slug oferta. Типовой шаблон: apidcms/oferta_template.md
3. Подать уведомление в РКН
Если сайт собирает персональные данные → через Госуслуги подать уведомление о включении в реестр операторов ПД. Штраф за отсутствие — до 300 000 ₽.
📋 Хранение доказательств согласия
При каждой отправке формы с отмеченной галочкой система записывает строку в лог:
admin/storage/logs/pd_consent.log
Формат одной строки:
2026-06-19 23:15:15 | 192.168.1.1 | contacts | id=42 | Mozilla/5.0...
Что фиксируется:
- Дата и время
- IP-адрес отправителя
- Таблица, в которую сохранились данные
- ID записи в таблице
- User-Agent
🔍 Как проверить
Через SSH:
tail -f www/admin/storage/logs/pd_consent.log
Или через файловый менеджер в админке → storage/logs/pd_consent.log