Что изменилось в аналитике с приоритетом конфиденциальности после перехода на серверный сбор данных?
Перенос сбора аналитики на сервер меняет маршрут событий, но не то, какие данные они могут содержать. Браузер может отправлять событие на собственный эндпоинт сайта, который затем передаёт выбранные поля одному или нескольким поставщикам аналитики. Этот дополнительный этап позволяет команде лучше контролировать маршрутизацию, но добавляет ещё одну точку, которую нужно проверять, тестировать и поддерживать.
Чтобы понять, что изменилось в аналитике с приоритетом конфиденциальности после перехода на серверный сбор данных и как проверить серверную аналитику на конфиденциальность, полезно проследить путь одного события от источника до конечного получателя. Например, проследите путь просмотра страницы товара: от запроса браузера через эндпоинт сбора данных, очередь или правило обработки — до каждой аналитической платформы, которая получает событие. Важно не только то, дошло ли событие, но и то, соблюдают ли все этапы передачи один и тот же выбор пользователя относительно согласия и ограничения на обработку данных.
Начните с одного события.
Шесть этапов ниже — это практическая проверка процессов, а не юридический чек-лист. Они помогут команде обнаружить неуместно передаваемые идентификаторы, несогласованные сигналы о согласии и пробелы в удалении данных, прежде чем эти проблемы распространятся на несколько систем. Если во время проверки трафик словно пропадает, прежде чем менять правила пересылки, сверьте маршрут запроса с рекомендациями о том, как восстановить пропавший трафик на сайте.
Этап 1 — Определите новые границы данных
Составьте схему фактического пути события — не того, который описан в первоначальном плане внедрения трекинга. Укажите браузер или приложение, собственный эндпоинт сайта, серверный менеджер тегов, очереди, сервисы обогащения данных и каждую аналитическую систему-получателя. Схема «браузер → эндпоинт сбора данных → правило обработки → аналитическая платформа» — хорошее начало, но она неполна, если очередь или сервис логирования тоже сохраняет данные события.
Для каждого этапа укажите, какие данные он получает, что в них меняет и что передаёт дальше. Если событие просмотра страницы содержит URL, отметьте, сохраняются ли параметры запроса после прохождения через сервер: URL может содержать адрес электронной почты или рекламный токен, раскрывающий больше информации, чем просто название страницы. Также укажите владельца каждого эндпоинта, чтобы было понятно, кто может менять его настройки маршрутизации.
Регулярно обновляйте схему.
Отметьте границу, за которой событие покидает устройство под контролем пользователя и попадает в вашу серверную среду. Затем отметьте каждую точку, где данные переходят в систему поставщика услуг. Собственный эндпоинт сайта упрощает контроль сбора данных, но не делает автоматически копии у последующих получателей собственными и не удаляет идентификаторы, уже содержащиеся в запросе.
Этап 2 — Проверьте входящие данные
Отправьте тестовое событие и проверьте запрос в браузере или приложении, на эндпоинте сбора данных и непосредственно перед пересылкой. Сравните поля в каждом варианте данных. Так команда сможет определить, какие данные отправляются при серверном сборе аналитики, и заметить, например, что поле user_id удалили на одном этапе, но эквивалентный идентификатор остался во вложенном объекте или параметре URL.
Так же внимательно проверяйте заголовки, как и свойства события. В зависимости от конфигурации запросы могут содержать данные, связанные с IP-адресом, сведения о user-agent, файлы cookie или значения авторизации. Серверу могут понадобиться некоторые заголовки для обработки запроса, но это не значит, что их следует включать в данные аналитики или копировать в журналы приложения. Определите, какие поля нужны на каждом этапе, и удаляйте остальные как можно раньше, насколько позволяет архитектура.
Проверьте и журналы. Отклонённое событие всё равно может сохраниться в журнале отладки, очереди необработанных сообщений или инструменте регистрации ошибок. Отправьте тестовое событие с явно обозначенным искусственным значением, например test-user-123, и поищите это значение в соответствующих журналах и очередях. Не используйте для удобства тестирования настоящий идентификатор клиента.
Добавьте к схеме событий краткий перечень полей. Для каждого поля укажите источник, назначение, получателя и допустимость использования при каждом статусе согласия. Если у поля нет понятного назначения или ответственного, приостановите его передачу, пока команда не устранит этот пробел.
Этап 3 — Проверьте передачу статуса согласия
Статус согласия должен передаваться вместе с событием в формате, понятном каждому этапу обработки. Чтобы проверить, как передавать согласие пользователя в серверную аналитику, протестируйте как минимум те варианты, которые действительно доступны в интерфейсе, например «согласие дано», «согласие не дано» и «решение не принято». Не предполагайте, что сервер правильно интерпретирует настройки браузера. Точный набор статусов и допустимые способы использования данных зависят от вашей реализации и применимых требований; уточните их у соответствующего специалиста по конфиденциальности или юриста.
Для каждого статуса отправьте одно и то же тестовое событие и проверьте, какие данные поступают каждому получателю. Например, при отказе от согласия убедитесь, что получатель не получает поля, исключённые вашей политикой, и проверьте, нужно ли полностью отбрасывать событие или обрабатывать его с ограничениями. Недостаточно настроить серверное правило на чтение согласия из одного файла cookie, если приложение отправляет другой сигнал или очередь повторно передаёт старые данные без этого сигнала.
Согласие — это фильтр.
Проверяйте не только обычный сценарий, но и задержки и сбои. Что произойдёт, если пользователь изменит настройки согласия после загрузки страницы, но до отправки следующего события? Что случится, если в момент получения запроса сервером сервис управления согласием окажется недоступен? Запишите ожидаемый результат для каждого случая, а затем сравните его с перехваченными запросами и записями у получателей. Пустое значение не должно незаметно трактоваться как согласие по умолчанию.
Привязывайте результаты проверки к конкретному событию и статусу согласия. Например, сохраните идентификатор запроса, временную метку и ответ получателя для теста со статусом «согласие не дано», не включая в сами материалы проверки персональные данные. Так команда сможет воспроизвести сбой, не превращая запись о тесте в ещё один набор чувствительных данных.
Этап 4 — Проверьте настройки у получателей
При серверной пересылке часто используются сопоставления, которые переименовывают поля, добавляют контекст или определяют, какие события отправлять тому или иному поставщику. Проверяйте такие сопоставления отдельно для каждого получателя. Если серверное правило дополняет событие о покупке записью клиента, выясните, действительно ли добавленные поля нужны для заявленной цели и допускает ли передача данных статус согласия.
Проверьте также настройки на стороне каждого получателя. У платформы могут быть собственные параметры обработки событий, сопоставления идентификаторов, хранения данных или обмена данными, и они могут меняться независимо от конфигурации сервера. Сверьте актуальные практики работы с данными у каждого получателя с действующей документацией и настройками вашей учётной записи. Не полагайтесь на старую заметку о внедрении как на подтверждение того, как система работает сейчас.
Правило пересылки может быть настроено верно, а параметр учётной записи у получателя — нет. Зафиксируйте дату проверки, название проверенной настройки, учётную запись или рабочую область и имя специалиста, который подтвердил результат. Если поставщик предоставляет отдельные тестовую и рабочую среды, убедитесь, что тестовое событие случайно не отправляется в рабочий ресурс аналитики.
Если в маршруте участвует менеджер тегов, проверьте, не отправляют ли его браузерные теги и серверные правила дублирующие события. Для начала можно воспользоваться инструкцией как добавить Astrina в Google Tag, а затем сравнить итоговый список событий с настройками пересылки на серверном эндпоинте. Два одинаковых события о покупке могут исказить отчёты, даже если оба содержат только разрешённые поля.
Этап 5 — Проверьте сроки хранения и пути удаления
Проследите путь тестовой записи дальше аналитического получателя. Копии одного и того же события могут храниться в журналах запросов, очереди, хранилище повторных попыток, экспорте в хранилище данных и интерфейсе поставщика. Перечислите все места хранения, сроки хранения или процедуры удаления. Если команда не может определить, где хранится неудачно обработанное событие, она не сможет уверенно объяснить, как будет удалена эта копия.
Проверьте процесс удаления с помощью искусственного тестового идентификатора. Отправьте тестовое событие, найдите его в системах, указанных на схеме, затем выполните документированные шаги удаления и проверьте результат в каждом месте хранения. Некоторые системы обрабатывают запросы на удаление асинхронно, поэтому указывайте ожидаемый срок на основе проверенной документации, а не обещайте мгновенное удаление.
Проверьте резервные копии и инструменты повторного воспроизведения. Очередь, из которой можно повторно отправить событие, способна восстановить данные после запроса на удаление, если при повторной обработке система не проверяет список исключений и никак иначе не учитывает статус удаления. Уточните у владельца системы, что происходит с событием, уже экспортированным в резервную копию хранилища данных, и зафиксируйте ограничения, которые существующий процесс не позволяет устранить.
Удаление — это маршрут, а не кнопка. Проверка завершена только тогда, когда команда проверила все контролируемые ею копии и задокументировала отдельные действия, которые необходимо выполнить у конкретных получателей.
Этап 6 — Добавьте регрессионные проверки
Превратите проверки границ данных, согласия и удаления в повторяемые тесты. Небольшой набор тестов может отправлять известное событие с искусственным идентификатором, проверять отсутствие запрещённых полей и подтверждать, что ожидаемый получатель получает разрешённую версию данных. Добавьте тест со статусом «согласие не дано» и тест на удаление. Иначе развёртывание может пройти успешно, хотя самые чувствительные сценарии останутся непроверенными.
Запускайте проверки после изменений браузерных тегов, серверных эндпоинтов, сопоставлений, настроек очередей или учётных записей поставщиков. Проверка кода может выявить изменившееся имя поля, но не обязательно заметит, что кто-то изменил настройку получателя в отдельной панели управления. Назначьте ответственного за каждый тест и сохраняйте последний успешный результат вместе с записью о развёртывании.
Задайте чёткие условия, при которых тест считается проваленным. Например, остановите выпуск, если тестовый идентификатор обнаружился в поле, помеченном для удаления, если событие со статусом «согласие не дано» поступило неразрешённому получателю или если после теста на удаление копия осталась в системе под контролем команды. Условия должны соответствовать вашей схеме данных и политике, а не универсальному шаблону.
Регулярно обновляйте схему.
Наконец, повторяйте проверку при добавлении нового получателя или этапа обогащения данных, а не только во время плановых аудитов. Подключение нового поставщика меняет границы передачи событий, а новая очередь повторных попыток может создать путь хранения, которого не было при предыдущем тестировании. Обновление схемы и повторная проверка по тем же шести этапам помогут заметить изменения до того, как они станут частью стандартного процесса сбора данных.
Базовый счётчик бесплатный. Добавьте сайт и попробуйте все функции.
На какие запросы отвечает эта страница
- серверная аналитика
- серверная аналитика — руководство
- Конфиденциальность при серверной аналитике: что проверить
- Конфиденциальность при серверной аналитике: что проверить — руководство
- Конфиденциальность при серверной аналитике: что проверить — разбор
- Конфиденциальность при серверной аналитике: что проверить — пошаговый разбор
- с чего начать: Конфиденциальность при серверной аналитике: что проверить
- Конфиденциальность при серверной аналитике: что проверить — как делают правильно
- Конфиденциальность при серверной аналитике: что проверить по шагам
- что такое Конфиденциальность при серверной аналитике: что проверить
- Конфиденциальность при серверной аналитике: что проверить для новичков
- Конфиденциальность при серверной аналитике: что проверить — чек-лист
- Конфиденциальность при серверной аналитике: что проверить — примеры
- зачем нужно Конфиденциальность при серверной аналитике: что проверить