Как стать автором
Обновить

Новая политика Firefox в отношении cookie

Время на прочтение 5 мин
Количество просмотров 46K
Автор оригинала: Jonathan Mayer


Начиная с 22-го релиза, политика Firefox в отношении cookie будет больше соответствовать предпочтениям пользователей. В этом мини-FAQ рассматриваются некоторые из вопросов, которые я получил от сторонников Mozilla, веб-разработчиков и пользователей.

Как работают новые политики Firefox в отношении cookie?


Коротко: только сайты, которые Вы действительно посещали, могут использовать cookie.

Более детально: если сайт является основным1, ничего не изменится. Контент сторонних сайтов будет иметь разрешение на cookie, только если Вы посещали эти сайты, и они установили хотя бы одно значение в cookie.

Как выглядит новая политика Firefox по сравнению с другими основными браузерами?


Chrome — разрешает все cookies.

Internet explorer — разрешения на cookies определяются политикой P3P. На практике, почти все cookie сторонних сайтов разрешены2.

Safari — контент основного сайта (сайта, который Вы просматриваете — прим. перев.) имеет разрешение на cookie. Контент сторонних сайтов имеет разрешение на cookie, только если Вы посещали эти сайты, и они установили хотя бы одно значение в cookie.

В общем, новая политика Firefox — это слегка упрощенная версия политик Safari3.

Нарушит ли новая политика Firefox работу сайтов?


Побочное влияние должно быть ограниченно. Политики Safari в отношении cookie работают уже десять лет, причем и в десктопной, и в iOS версиях браузера. На некоторых сайтах могут потребоваться небольшие изменения в коде, чтобы с Firefox работать также, как и с Safari.

Для большей уверенности, команда разработчиков Mozilla, занимающаяся вопросами приватности, пристально наблюдает за работой политики до финального релиза. Изменение будет присутствовать около шести недель в пре-альфа, альфа и бета сборках. Если Вы обнаружите какие-либо ошибки, пожалуйста, сообщите об этом в службу поддержки Mozilla [рус.]!

Как я могу проверить, есть ли у моего сайта разрешения на cookie?


Легко: попробуйте установить cookie. Этот способ может продемонстрировать разрешения на cookie и серверного, и клиентского кода.
Способы, основанные на определении браузера, в основном, нежелательны, так как могут быть ненадежны и требуют постоянного обновления. К тому же, такие способы не учитывают пользователей Chrome и Internet Explorer, которые не используют политику по-умолчанию.

Я работаю со сторонним сайтом, который использует cookie. Что мне делать?


Если пользователь Firefox непосредственно взаимодействует с вашим контентом, используйте такую же тактику, как и в отношении пользователей Safari4. Примеры такого контента — приложения и виджеты отправки комментариев в Facebook, в которых пользователь вводит текст.
Если пользователь непосредственно не взаимодействует с вашим контентом, или вы в этом заранее не уверены, вы должны запросить разрешение перед установкой cookie. Большинство аналитических сервисов, рекламных сетей, и не взаимодействующих с пользователем виджетов социальных сетей входят в эту категорию.
В общем, в некоторых случаях обход технических ограничений политик может быть обоснован, но только не в целях обхода политики конфиденциальности.

Что случится с уже существующими cookie?


Новая политика не предусматривает каких-либо условий для существующих cookie. Пользователи Firefox должны будут очистить cookie, чтобы получить эффект от новых политик.5

Что ждет политику Firefox в отношении cookie в будущем?


Предстоит сделать еще массу работы. Некоторые направления в которых я заинтересован:
  • Расширение политик в отношении cookie на другие технологии хранения данных на стороне пользователя (например, HTML5 Web Storage).
  • Предоставление унифицированного механизма для запроса разрешений на хранение.
  • Послабление политик для сайтов, которые придерживаются политики Do Not Track.

Делитесь Вашими идеями в списке рассылки mozilla.dev.privacy!


Все вышенаписанное — моя точка зрения. Я не говорю за всю организацию Mozilla.
Это был мой первый коммит в код Firefox. Выражаю огромные благодарности следующим людям: Sid Stamm, Monica Chew, Brendan Eich, Asa Dotzler, Josh Matthews, Justin Dolske, Daniel Veditz и другим членам сообщества Mozilla за их советы, наставления и терпение к моей неопытности.

Сноски:
1. Определяется как публичный суффикс +1 уровень.
2. Многие критиковали подход Microsoft за неэффективность, сложность и зависимость от де-факто устаревшего стандарта P3P. По теме — читайте искажение политик конфиденциальности сайта из-за ошибок в ключе P3P, автор Leon и др.
3. Разница, в основном, заключается в удобстве для разработчиков.
4. Наиболее приемлемый способ — перенаправлять пользователей через ваш сайт. Также Вы можете задействовать технологии хранения, не использующие cookie, хотя эта альтернатива тоже будет ограничена политикой в будущем.
5. Имеет смысл очищать cookies каждые несколько месяцев.

Upd. От переводчика: в пре-альфа версии уже можно испытать нововведения самостоятельно. Окно настроек с новой опцией выглядит так. Выборочный перевод из дискуссии mozilla.dev.privacy‎:

Вопрос: что считается сторонним контентом в этом контексте? [любые] iframe это сторонний контент?
Ответ: тоже самое, что и для остального. [сторонним контентом считается] всё, что имеет источник не тот, что у родительского документа.

Вопрос: каково будет поведение браузера, если контент, не имея на это разрешения, произведет попытку установить cookie?
Ответ: тихая неудача. Можо было бы добавлять сообщение об ошибке в консоль, но я не уверен что это надо делать. Для веб-сервера это будет выглядеть, как будто заголовок Set-Cookie был потерян при передаче.

Вопрос: правильно ли я думаю, что в результате этих нововведений увеличится централизация вокруг крупных игроков индустрии таргетинга (Google/Yahoo/Facebook/и т.д.), которые станут практически единственными сайтами, которые смогут устанавливать cookie почти всем пользователям? С сопутствующими интересными / неоднозначными компромиссами (меньшее количество игроков на рынке — правительству легче их регулировать и т.п.).
Jason
Ответ: против любой контр-меры всегда будут приниматься контр-контр-меры, в том числе использование локального хранилища (local storage): оно может заменить cookie, но на него не распространяются настройки cookie; либо перенаправления пользователей чтобы обойти ограничения; а также то, что вы озвучили.
Но значит ли это что мы никогда не должны пробовать частичные решения? Не думаю.

Вопрос: Каким будет уровень эвристики? Что я имею в виду: я посетил сайт www.socialnetwork.com, а затем пытаюсь установить cookie от api.socialnetwork.com. Получится?
Ответ: да. Причем и со старыми, и с новыми политиками. Сторонними являются сайты, которые определятся как публичный суффикс +1 (см. mozIThirdPartyUtil)

Вопрос: я посещаю www.randomblog.com, который имеет кнопку "+100500" с api.socialnetwork.com. Будет ли она работать, при том что я никогда не посещал api.socialnetwork.com напрямую?
Ответ: кнопка отобразится и будет нажиматься как обычно. Но, если пользователь никогда не посещал socialnetwork.com или его поддомен (точнее, если пользователь никогда не получал cookie от socialnetwork.com или его поддомена), тогда кнопка не сможет установить cookie.

Вопрос: как насчет онлайн-банкинга, где сайты включают сторонний контент, проводящий платежи, в iframe? Вы никогда не будете посещать эти сторонние сайты напрямую, хотя они весьма необходимы для работы пользователя на важном сайте. Вспоминается Safari, последний раз когда я открывал такой сайт в Safari, сайт сообщил, что браузер Safari не поддерживается [грустный смайлик]
Ответ: я уже много лет не сталкивался с сайтами, несовместимыми с Safari, предположительно из-за возросшей популярности iOS устройств. В любом случае, действительно, сервисы, которые применяют обходные пути чтобы поддерживать Safari, теперь должны будут применять их и для Firefox.
Теги:
Хабы:
+41
Комментарии 79
Комментарии Комментарии 79

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн