Mempersiapkan penghentian penggunaan cookie pihak ketiga

Panduan ini membantu Anda memahami dampak dan perubahan yang diperlukan pada add-on Anda yang diperkenalkan oleh Chrome yang mengakhiri dukungan untuk cookie pihak ketiga.

Ringkasan

Pada 4 Januari 2024, Chrome memperkenalkan Fitur Anti-Pelacakan, yang membatasi akses situs ke cookie pihak ketiga (pihak ketiga) secara default, untuk 1% pengguna. Pada awal tahun 2025, Chrome akan menghentikan penggunaan cookie pihak ketiga sepenuhnya.

Setidaknya ada dua perjalanan pengguna yang terpengaruh di add-on Classroom:

  1. Alur single sign-on (SSO) Google
  2. Meluncurkan pengguna ke tab baru

SSO Google

Selama alur SSO Google, pengguna akan diarahkan ke dialog untuk login ke Akun Google mereka dan mengizinkan pembagian data.

Visualisasi tiga konteks cookie yang berbeda selama SSO dari dalam
iframe

Gambar 1. Visualisasi tiga konteks cookie yang berbeda selama SSO dari dalam iframe: (1) aplikasi Classroom tingkat atas, (2) iframe tersemat pihak ketiga (DavidPuzzle di localhost dalam hal ini), dan (3) dialog OAuth tingkat atas.

Dalam implementasi add-on standar, cookie sesi ditetapkan setelah proses login ini selesai. Iframe add-on, yang berada dalam konteks tersemat, dimuat ulang, sekarang dengan cookie sesi, yang memungkinkan pengguna mengakses sesi yang diautentikasi. Namun, jika cookie pihak ketiga dinonaktifkan, situs dalam konteks tersemat seperti iframe add-on tidak dapat mengakses cookie dari konteks level teratas masing-masing. Untuk add-on Classroom, pengguna tidak dapat mengakses sesi yang diautentikasi dan terjebak dalam loop login.

Untuk implementasi yang menetapkan cookie sesi dalam konteks iframe tersemat, masalah ini dapat dimitigasi oleh CHIPS API, yang memungkinkan situs tersemat untuk menetapkan dan mengakses cookie yang dipartisi (cookie yang diberi kunci di domain tersemat dan embedder). Namun, implementasi yang menetapkan cookie sesi dalam konteks tingkat teratas dialog login tidak dapat mengakses cookie tanpa partisi dalam iframe, sehingga mencegah login.

Tab baru

Karena alasan serupa, jika pengguna memiliki sesi yang diautentikasi berbasis cookie di iframe add-on, dan iframe meluncurkan pengguna ke tab tingkat teratas baru untuk aktivitas, tab tingkat teratas tidak dapat mengakses cookie sesi yang dipartisi dari iframe. Hal ini mencegah status sesi iframe tetap ada di aktivitas tab baru dan dapat memaksa pengguna untuk login lagi di tab baru, misalnya. CHIPS API tidak dapat menyelesaikan masalah ini, karena desainnya; cookie iframe yang dipartisi tidak dapat diakses dalam konteks tingkat atas.

Tindakan developer

Ada beberapa tindakan yang harus Anda pertimbangkan untuk memastikan add-on Anda terus berfungsi sebagaimana mestinya saat Chrome menghentikan penggunaan cookie pihak ketiga secara bertahap.

  1. Audit penggunaan cookie pihak ketiga dalam perjalanan penting pengguna add-on Anda. Lebih khususnya, uji dengan cookie pihak ketiga dinonaktifkan untuk mengevaluasi dampaknya bagi penerapan tertentu Anda.
  2. Jelajahi Storage Access API. Untuk semua penerapan add-on, sebaiknya pelajari Storage Access API (SAA). SAA memungkinkan iframe mengakses cookie-nya di luar konteks iframe. SAA tersedia di Chrome saat ini, dan didukung oleh aplikasi Classroom.

  3. Ikut serta dalam FedCM. Selain itu, jika Anda menggunakan GIS, library Login dengan Google, panduan resmi dari tim Identitas adalah memilih untuk menggunakan FedCM. Hal ini tidak menggantikan kemampuan cookie pihak ketiga, tetapi pada akhirnya akan diperlukan di GIS sebagai bagian dari penghentian cookie pihak ketiga. FedCM tersedia di Chrome saat ini dan didukung di Classroom, tetapi perilaku dan fiturnya masih sedang dalam pengembangan dan terbuka untuk masukan.

  4. Bermigrasi ke GIS. Jika Anda menggunakan library GSIv2 yang tidak digunakan lagi, yang juga dikenal sebagai library Login dengan Google, sebaiknya Anda bermigrasi ke GIS, karena dukungan untuk GSIv2 ke depannya tidak jelas.

  5. Ajukan permohonan penundaan uji coba penghentian. Chrome menawarkan uji coba penghentian penggunaan untuk memungkinkan kasus penggunaan non-iklan menunda efek penghentian penggunaan cookie pihak ketiga. Jika disetujui, Anda akan diberi token yang dapat digunakan di add-on untuk tetap mengaktifkan cookie pihak ketiga untuk origin Anda hingga tahun 2024, sambil bermigrasi ke solusi jangka panjang seperti SAA. Setelah mengajukan, Anda akan diminta untuk memberikan ID bug atau link untuk laporan kerusakan. Tim kami telah melaporkan masalah ini untuk add-on Classroom dan Anda dapat memberikan bug ini.