Подготовьтесь к прекращению поддержки сторонних файлов cookie

Это руководство поможет вам понять влияние и необходимые изменения в вашем дополнении, внесенные прекращением поддержки Chrome сторонних файлов cookie .

Обзор

4 января 2024 года Chrome представил защиту от отслеживания , которая по умолчанию ограничивает доступ к веб-сайту сторонних (3P) файлов cookie до 1% пользователей. В начале 2025 года Chrome планирует полностью отказаться от 3P-куки .

Дополнения для Класса затрагивают как минимум два пути пользователя:

  1. Процедура единого входа Google (SSO)
  2. Запуск пользователей в новые вкладки

Система единого входа Google

Во время процесса единого входа Google пользователи переходят к диалоговому окну для входа в свою учетную запись Google и согласия на обмен данными.

Визуализация трех различных контекстов файлов cookie во время единого входа из iframe.

Рис. 1. Визуализация трех различных контекстов файлов cookie во время единого входа из iframe: (1) приложение Classroom верхнего уровня, (2) встроенный iframe 3P (в данном случае DavidPuzzle на локальном хосте) и (3) OAuth верхнего уровня. диалог.

В типичной реализации надстройки файл cookie сеанса устанавливается по завершении процесса входа в систему. Надстройка iframe, находящаяся во встроенном контексте , перезагружается, теперь с файлом cookie сеанса, что позволяет пользователю получить доступ к своему аутентифицированному сеансу. Однако, когда 3P-куки отключены, сайты во встроенном контексте, такие как надстройки iframe, не могут получить доступ к куки-файлам из соответствующих контекстов верхнего уровня . При использовании надстроек Класса пользователь не может получить доступ к своему сеансу, прошедшему проверку подлинности, и застревает в цикле входа.

Для реализаций, которые устанавливают файл cookie сеанса во встроенном контексте iframe, эту проблему можно устранить с помощью API-интерфейса CHIPS , который позволяет встроенным сайтам устанавливать и получать доступ к разделенным файлам cookie (файлы cookie с ключами как на устройстве внедрения, так и на встроенном домене). Однако реализации, которые устанавливают файл cookie сеанса в контексте верхнего уровня диалогового окна входа, не могут получить доступ к неразделенному файлу cookie в iframe, что предотвращает вход в систему.

Новые вкладки

По аналогичным причинам, если у пользователя есть сеанс с аутентификацией на основе файлов cookie в надстройке iframe, и iframe запускает пользователя на новую вкладку верхнего уровня для действия, вкладка верхнего уровня не может получить доступ к файлу cookie секционированного сеанса из iframe. Это предотвращает сохранение состояния сеанса iframe в активности новой вкладки и может заставить пользователя снова войти в систему, например, на новой вкладке. API-интерфейс CHIPS не способен решить эту проблему по своей конструкции; разделенные файлы cookie iframe недоступны в контексте верхнего уровня.

Действия разработчика

Есть несколько действий, которые вам следует предпринять, чтобы ваше дополнение продолжало работать должным образом, поскольку Chrome постепенно отказывается от 3P-куки.

  1. Проведите аудит использования 3P-файлов cookie на критически важных этапах взаимодействия с пользователем вашего дополнения. Точнее, протестируйте отключенные 3P-куки, чтобы оценить влияние на вашу конкретную реализацию.
  2. Изучите API доступа к хранилищу . Для всех реализаций надстроек мы рекомендуем вам изучить API доступа к хранилищу (SAA). SAA позволяет iframe получать доступ к своим файлам cookie вне контекста iframe. SAA доступен в Chrome уже сегодня и поддерживается приложением Classroom.

  3. Подпишитесь на FedCM . Кроме того, если вы используете GIS , библиотеку Sign in with Google, команда Identity рекомендует подписаться на FedCM . Это не заменяет возможности 3P-куки, но в конечном итоге потребуется в ГИС в рамках прекращения поддержки 3P-куки. FedCM доступен в Chrome сегодня и поддерживается в Классе, но поведение и функции все еще находятся в стадии разработки и открыты для отзывов.

  4. Переход на ГИС . Если вы используете устаревшую библиотеку GSIv2 , также известную как библиотека входа в Google, настоятельно рекомендуется перейти на GIS , поскольку поддержка GSIv2 в будущем неясна.

  5. Подайте заявку на отсрочку пробного прекращения поддержки . Chrome предлагает пробную версию прекращения поддержки , чтобы позволить нерекламным вариантам использования отложить последствия прекращения поддержки 3P-куки. В случае принятия вам будет предоставлен токен, который вы сможете использовать в своем дополнении, чтобы поддерживать 3P-куки для вашего происхождения до 2024 года, одновременно переходя на долгосрочное решение, такое как SAA. После подачи заявки вам будет предложено указать идентификатор ошибки или ссылку на отчет о поломке. Наша команда уже подала заявку на дополнение для Класса, и вы можете сообщить об этой ошибке .