Анализ данных идет вразрез с принципом приватности. Но и Big...
Анализ данных идет вразрез с принципом приватности. Но и Big Data, и Privacy сейчас растущие тренды. Кто победит?
Большая часть данных в системах аналитики сайта берется из реферера (источник перехода в http-заголовках). Из-за приватности мы видим все больше "not provided" в Google Analytics. Сегодня мы поговорим о Referrer-Policy, чтобы были понятны заголовки последних новостей.
Referrer может содержать в себе: домен перехода, полный путь, строку запроса. Часть из этих данных может быть приватной для пользователя.
https://site.com/ru/search/?q=секс+игрушки&sort=cheap
https://site.com/email-verified/snowden@gmail.com
https://site.com/xYz1hjHU/password-reset
Чтобы обозначить, какие данные должны быть доступны в Referrer, можно использовать http-заголовок Referrer-Policy. Значения у него могут быть следующие:
Термин "хост" ниже используется как синоним термину "origin", который включает в себя комбинацию протокола, хоста и порта сайта.
no-referrer — никакие данные в реферере не передаются.
origin — передается только хост, без пути перехода.
unsafe-url — передается в том числе полный путь перехода.
[учитывает безопасность перехода]
strict-origin — не передает данные при переходе с безопасного HTTPS на небезопасный HTTP. Внутри одного протокола передает только хост.
no-referrer-when-downgrade — работает как unsafe-url, если запрос идет в пределах одного протокола. То есть передается полный путь. В случае запроса с HTTPS на HTTP реферер по-прежнему не передается. Обычно этот параметр браузеры используют по умолчанию, если Referrer-Policy отсутствует.
[учитывает переход между разными хостами]
origin-when-cross-origin — при запросе другого хоста в Referrer передается только хост, в рамках одного хоста передается полный URL.
same-origin — полные данные передаются только в рамках одного хоста.
[комбинация безопасности перехода и одинаковости хостов]
strict-origin-when-cross-origin — учитывает безопасность перехода, и если запрос идет с HTTPS на HTTP, то ничего не передается. В рамках одного протокола передаются данные о хосте. И полный путь знает только тот же хост.
В любом из случаев, если передается полный путь, из него исключаются пароли и имена пользователей.
Теперь самое интересное. Chrome до недавнего времени использовал по умолчанию для сайтов, где отсутствует Referrer-Policy, значение no-referrer-when-downgrade. Начиная с 85 версии (которую выкатили 30 июля) по умолчанию будет использоваться strict-origin-when-cross-origin.
То есть, что изменилось? Полные данные будут передаваться только в пределах одного хоста. А если вы хотите проанализировать внешний трафик, то будете знать лишь адрес домена, с которого к вам перешли. И то, если переход был с более/такого же безопасного сайта. Здесь приватность пока побеждает.
Новость от разработчиков:
https://twitter.com/ChromiumDev/status/1289185313747697668

– https://developer.mozilla.org/en-US/docs/Web/HTTP/...
– https://tools.ietf.org/html/rfc6454#section-3.2
– https://www.w3.org/TR/referrer-policy/#strip-url
– https://developers.google.com/web/updates/2020/07/...
Источник новости https://t.me/devakatalk/2391...
53 
