Przygotowanie do wycofania plików cookie innych firm

Z tego przewodnika dowiesz się, jaki wpływ na Twój dodatek będzie miało zakończenie przez Chrome obsługi plików cookie innych firm i jakie zmiany musisz wprowadzić.

Przegląd

4 stycznia 2024 r. Chrome wprowadził ochronę przed śledzeniem, która domyślnie ogranicza dostęp witryn do plików cookie innych firm (3P) w przypadku 1% użytkowników. Na początku 2025 r. Chrome planuje całkowicie wycofać pliki cookie innych firm.

W przypadku dodatków do Classroom dotyczy to co najmniej 2 ścieżek użytkownika:

  1. proces logowania jednokrotnego (SSO) Google
  2. otwieranie nowych kart dla użytkowników

Logowanie jednokrotne Google

Podczas procesu logowania jednokrotnego Google użytkownicy są przekierowywani do okna, w którym mogą zalogować się na swoje konto Google i wyrazić zgodę na udostępnianie danych.

Wizualizacja 3 różnych kontekstów plików cookie podczas logowania jednokrotnego w ramce iframe

Rysunek 1. Wizualizacja 3 różnych kontekstów plików cookie podczas logowania jednokrotnego w elemencie iframe: (1) aplikacja Classroom najwyższego poziomu, (2) osadzony element iframe innej firmy (w tym przypadku DavidPuzzle na localhost) i (3) okno OAuth najwyższego poziomu.

W typowej implementacji dodatku po zakończeniu procesu logowania ustawiany jest plik cookie sesji. Element iframe dodatku, który znajduje się w kontekście osadzonym, jest przeładowywany, tym razem z plikiem cookie sesji, co umożliwia użytkownikowi dostęp do uwierzytelnionej sesji. Gdy jednak pliki cookie innych firm są wyłączone, witryny w kontekście osadzonym, takie jak elementy iframe dodatków, nie mogą uzyskać dostępu do plików cookie z odpowiednich kontekstów najwyższego poziomu. W przypadku dodatków do Classroom użytkownik nie może uzyskać dostępu do uwierzytelnionej sesji i utyka w pętli logowania.

W przypadku implementacji, które ustawiają plik cookie sesji w kontekście osadzonego elementu iframe, ten problem można rozwiązać za pomocą interfejsu CHIPS API, który umożliwia osadzonym witrynom ustawianie i uzyskiwanie dostępu do plików cookie podzielonych na partycje (plików cookie kluczowanych zarówno przez domenę osadzającą, jak i osadzoną). Implementacje, które ustawiają plik cookie sesji w kontekście najwyższego poziomu okna logowania, nie mogą jednak uzyskać dostępu do niepodzielonego pliku cookie w elemencie iframe, co uniemożliwia logowanie.

Nowe karty

Z podobnych powodów, jeśli użytkownik ma uwierzytelnioną sesję opartą na plikach cookie w elemencie iframe dodatku, a element iframe otwiera nową kartę najwyższego poziomu na potrzeby aktywności, karta najwyższego poziomu nie może uzyskać dostępu do podzielonego na partycje pliku cookie sesji z elementu iframe. Uniemożliwia to utrwalanie stanu sesji elementu iframe w nowej karcie i może na przykład zmusić użytkownika do ponownego zalogowania się na nowej karcie. Interfejs CHIPS API nie jest w stanie rozwiązać tego problemu, ponieważ pliki cookie elementu iframe podzielone na partycje są niedostępne w kontekście najwyższego poziomu.

Działania programisty

Aby mieć pewność, że Twój dodatek będzie nadal działać zgodnie z oczekiwaniami, gdy Chrome wycofa pliki cookie innych firm, rozważ wykonanie tych czynności.

  1. Sprawdź użycie plików cookie innych firm w najważniejszych ścieżkach użytkownika w dodatku. Więcej szczególnie, przetestuj działanie dodatku przy wyłączonych plikach cookie innych firm aby ocenić wpływ na konkretną implementację.
  2. Poznaj interfejs Storage Access API. W przypadku wszystkich implementacji dodatków zalecamy zapoznanie się z interfejsem Storage Access API (SAA). SAA umożliwia elementom iframe dostęp do plików cookie poza kontekstem elementu iframe. SAA jest obecnie dostępny w Chrome i obsługiwany przez aplikację Classroom.

  3. Włącz FedCM. Jeśli używasz GIS, biblioteki Zaloguj się przez Google , oficjalne zalecenie zespołu ds. tożsamości to włączenie FedCM. Nie zastępuje to możliwości plików cookie innych firm, ale w końcu będzie wymagane w GIS w ramach wycofywania plików cookie innych firm. FedCM jest obecnie dostępny w Chrome i obsługiwany w Classroom, ale jego działanie i funkcje są nadal w fazie rozwoju i czekają na opinie.

  4. Przeprowadź migrację do GIS. Jeśli używasz wycofanej biblioteki GSIv2, znanej też jako biblioteka logowania przez Google, zdecydowanie zalecamy migrację do GIS, ponieważ obsługa GSIv2 w przyszłości jest niejasna.

  5. Złóż wniosek o opóźnienie wycofania. Chrome oferuje okres próbny wycofania funkcji, aby umożliwić przypadkom użycia niezwiązanym z reklamami opóźnienie skutków wycofania plików cookie innych firm. Jeśli wniosek zostanie zaakceptowany, otrzymasz token, którego możesz użyć w dodatku, aby utrzymać włączone pliki cookie innych firm w przypadku Twojej domeny do końca 2024 r., podczas gdy będziesz migrować do długoterminowego rozwiązania, takiego jak SAA. Po złożeniu wniosku poprosimy Cię o podanie identyfikatora błędu lub linku do raportu o awarii. Nasz zespół zgłosił już ten problem w przypadku dodatków do Classroom, więc możesz podać ten błąd.