К содержанию
титов-ai.ru
11 сентября 2026· обновлено 13 сентября 2026·чтение 9 минут·Вадим Титов

Проверка сайта на 152-ФЗ: шесть пунктов и мои пять нарушений

Проверка занимает десять минут и не требует юриста. Список из шести пунктов, по которому я проверил собственный сайт — и не прошёл пять. Притом что продаю приведение чужих сайтов к 152-ФЗ.

Коротко. Проверка сайта на соответствие 152-ФЗ занимает десять минут и не требует юриста. Нужен браузер и готовность честно посмотреть на свой сайт. Ниже список из шести пунктов, по которому я проверил собственный сайт и нашёл пять нарушений. Притом что на этом же сайте продаю приведение чужих сайтов к 152-ФЗ.

Проверка сайта на 152-ФЗ: шесть пунктов

Сначала сам список, чтобы не листать. Разбор каждого пункта на моих ошибках идёт дальше.

  1. Прочитайте свою политику конфиденциальности целиком. Не глазами автора, а глазами проверяющего: каждое утверждение — правда ли это сегодня?
  2. Посчитайте все места, где сайт принимает что-то от посетителя: формы, обратный звонок, подписка, чат, калькулятор, квиз. Каждое описано в политике?
  3. Откройте инструменты разработчика (F12), вкладку сетевых запросов, и загрузите свою главную. Уходят ли запросы к аналитике до того, как вы нажали кнопку в баннере?
  4. Найдите на баннере кнопку отказа. Нет — нарушение.
  5. Найдите способ отозвать согласие. Нет — тоже.
  6. Посмотрите дату самой старой записи с персональными данными в базе. Сравните со сроком хранения из политики.

Шестой пункт самый показательный: сроки пишут все, исполняет почти никто. У меня по этому списку не прошло пять пунктов из шести.

Первые пять пунктов можно не проверять руками: бесплатная проверка сайта обходит до 15 страниц и показывает, среди прочего, риски по 152-ФЗ — нет политики, формы без согласия. Шестой пункт она не увидит: в вашу базу у неё доступа нет, туда придётся заглянуть самому.

С чего началось

Роскомнадзор внёс меня в реестр операторов персональных данных. Уведомление я подал 1 сентября, запись появилась через неделю. Формально — всё, обязанность исполнена.

Перед тем как включать Яндекс Метрику, я решил перечитать свою же политику конфиденциальности. Не из осторожности, а по делу: в политике было написано, что аналитики на сайте нет, и этот абзац предстояло переписать.

Переписыванием одного абзаца дело не кончилось.

Что нашлось

Политика описывала сайт-визитку: «Форм на сайте нет. Контакт — через Telegram или почту». Дальше, в разделе о том, что сайт не собирает: «Имя, телефон и другие персональные данные через сайт не запрашиваются и не сохраняются».

На сайте при этом работал чат-помощник. Он сохранял переписку в базу вместе с IP-адресом и адресом страницы, клал идентификатор сессии в браузер при первой же загрузке и умел показывать форму «оставьте имя и контакт». Каждое сообщение уходило в языковую модель стороннего провайдера.

Пять расхождений между текстом и кодом:

  • «форм нет» — форма была;
  • «данные не сохраняются» — сохранялись, в том числе IP;
  • «сайт не использует cookie» — в браузере лежали три ключа;
  • «сведения не передаются» — переписка уходила в чужую модель;
  • «трансграничной передачи нет» — уведомление о контакте уходило в мессенджер с юрлицом в ОАЭ.

Почему я этого не видел

Политику я писал в августе, когда сайт действительно был визиткой. Чат-помощник появился позже. Между этими двумя событиями не было момента, в который кто-то сказал бы «а теперь перечитай документ».

Механизм тут простой. Документ пишется под состояние сайта на конкретный день и с этого дня начинает устаревать. Код меняется каждую неделю, политика не меняется никогда. Через полгода они описывают разные сайты.

Отдельно неприятное. В шапке чата у меня было написано: «Не оставляйте в чате телефон, почту и имя, я их не сохраняю. Переписка хранится обезличенно». Я это писал как заботу о посетителе. Код сохранял сообщения дословно, вместе с IP. Обещание, которое опровергается одной строкой кода, при проверке хуже, чем отсутствие обещания. Первое это недостоверные сведения, второе просто пробел.

Самое частое нарушение: баннер про cookie

У меня стоял такой баннер: текст про cookie, кнопка «Понятно» и фраза «Продолжая пользоваться сайтом, вы соглашаетесь с этим».

В описании услуги на моём же сайте написано дословно: «Формулировка про „продолжая пользоваться сайтом“ согласием не считается. Ставлю чекбоксы в формах и баннер, где отказ работает». Я продавал исправление ровно той ошибки, которая висела у меня внизу экрана.

Почему это не согласие. Согласие по закону — активное действие. Прокрутка страницы действием не является: человек не выбирал, он просто читал. Кнопка «Понятно» тоже не выбор: она одна, отказаться нечем.

Второе, более серьёзное. Скрипт аналитики у меня стоял в общем шаблоне страницы и грузился всегда, а баннер просто рисовался поверх. То есть cookie ставились до того, как посетитель что-либо нажал. Даже идеальный текст на баннере этого не исправляет: к моменту показа данные уже собраны.

Как выглядит правильный баннер

  • две кнопки — «Принять» и «Отклонить», одинакового размера и заметности;
  • счётчик не загружается, пока не нажали «Принять»;
  • выбор запоминается, на каждой странице не переспрашивает;
  • отозвать согласие можно так же просто, как дать — ссылкой в подвале.

Последний пункт пропускают чаще всего. Согласие даётся одной кнопкой, а отзывается письмом на почту и десятью рабочими днями ожидания. По закону отзыв не может быть сложнее.

Сроки хранения, которые никто не исполняет

В моей политике был срок: переписка хранится не дольше трёх лет. Красивая строчка. Механизма удаления в коде не было, и таблицы росли вечно: единственная уборка чистила счётчики антифлуда.

Это отдельный класс проблем: обещание в документе без кода, который его исполняет. Проверяется элементарно: открыть базу и посмотреть дату самой старой записи. Если она старше заявленного срока, документ врёт.

Второе, что вскрылось рядом. Человек имеет право потребовать удалить свои данные. У меня не было способа их найти: в таблице контактов лежал идентификатор сессии, а человек знает свой телефон, но не знает никакого идентификатора. Пришлось бы искать руками через базу. Теперь поиск идёт по контакту, и вместе с контактом удаляется переписка, из которой он пришёл.

Ещё одно: политика была закрыта от поиска

У страницы с политикой стоял запрет на индексацию. Логика была SEO-гигиеническая: служебная страница, нечего разбавлять индекс.

Закон требует обеспечить неограниченный доступ к политике. Ссылка в подвале формально доступ даёт, но страница, которую нельзя найти поиском, этому требованию противоречит. Смешнее всего, что в самом тексте политики было написано: «Актуальная редакция всегда доступна без ограничений». Под метатегом, запрещающим её показывать.

Что я сделал

Порядок был такой: сначала остановить сбор без основания, потом привести документ, потом всё остальное.

  • галочка согласия в форме контакта, кнопка заблокирована, пока её нет;
  • сервер отклоняет контакт без согласия — форма может быть обойдена, запрос приходит напрямую;
  • в базу пишется факт согласия: когда и под каким текстом. Тексты меняются, а доказывать придётся то, что видел конкретный человек;
  • удаление по срокам раз в сутки, автоматически;
  • баннер с двумя кнопками, аналитика грузится только после «Принять»;
  • политика переписана под то, что делает код, с перечнем данных и сроков;
  • запрет индексации снят.

Запись вебвизора я оставил выключенной. Он пишет содержимое полей, а на сайте есть форма контакта — то, что человек печатает, попадёт в запись до того, как он нажмёт «отправить». Для задачи «понять, какие страницы читают» это лишнее.

Что из этого следует

Совет «наймите юриста» тут помогает слабо. Юрист напишет документ, и через полгода вы окажетесь там же, где был я: документ описывает сайт на день написания, а сайт живёт дальше.

Помогает привязать документ к коду. Срок хранения в политике и срок в настройках должны быть одним числом, а не двумя независимыми. Список собираемых данных обновляется тогда же, когда на сайте появляется новая форма. У меня теперь в коде висит комментарий: сроки обязаны совпадать с политикой, расхождение и есть то, что спрашивают при проверке.

Правило простое. Добавили на сайт что-то, что принимает данные от посетителя, в тот же день откройте политику. Не через месяц.

Если возиться с этим некогда, я привожу сайты к 152-ФЗ: политика под реальный код, баннер с рабочим отказом, журнал согласий, сроки хранения, которые исполняются сами. Свой сайт я привёл в порядок последним из всех, и горжусь тут явно не этим.

Как согласие, журнал и сроки хранения выглядят в работающем коде — в разборе чат-виджета.

Не уверены, что подойдёт под вашу задачу? Опишите её — скажу прямо, что закроет её быстрее и дешевле.

Написать в Telegram
← Все статьи