Uji coba origin Cookie yang Memiliki Status Terpartisi Independen (CHIPS)

Mulai Chrome 100, uji coba origin CHIPS memungkinkan keikutsertaan cookie ke penyimpanan yang "dipartisi", dengan wadah cookie terpisah per situs tingkat atas.

Perubahan

Apa itu CHIPS?

Cookie Memiliki Status Terpartisi Independen (CHIPS) adalah proposal Privacy Sandbox yang memungkinkan developer mengikutsertakan cookie ke dalam penyimpanan yang "dipartisi", dengan toples cookie terpisah per situs tingkat atas.

Cookie pihak ketiga yang dipartisi dikaitkan dengan situs tingkat teratas tempat cookie pertama kali ditetapkan dan tidak dapat diakses dari tempat lain. Tujuannya adalah agar cookie dapat ditetapkan oleh layanan pihak ketiga, tetapi hanya dapat dibaca dalam konteks situs tingkat atas tempat cookie tersebut ditetapkan pertama kali.

Untuk siapa uji coba origin?

Uji coba ini tersedia sebagai uji coba origin pihak ketiga, yang memungkinkan penyedia konten tersemat untuk mencoba fitur baru di beberapa situs.

Jika situs terdaftar dalam uji coba sebagai pihak pertama, fungsi partisi cookie juga akan tersedia untuk penyedia konten pihak ketiga di situs tersebut. Penyedia pihak ketiga tersebut juga akan menerima header HTTP tambahan, yang menunjukkan pendaftaran mereka dalam uji coba origin.

Berapa lama uji coba akan berjalan?

Uji coba akan tersedia mulai Chrome 100 hingga Chrome 105. Periksa jadwal rilis Chrome untuk mengetahui tanggal rilis yang direncanakan.

Cara mendaftar ke uji coba origin

Prasyarat

Stabil Chrome 103.

Langkah

  1. Untuk mendaftar ke uji coba origin dan mendapatkan token untuk domain Anda, buka halaman uji coba origin CHIPS.

  2. Sertakan header Origin-Trial dengan token yang valid dalam respons apa pun dengan header Set-Cookie yang menyertakan Partitioned:

    Origin-Trial: <ORIGIN TRIAL TOKEN>
    
  3. Tambahkan atribut Partitioned ke cookie dengan salah satu dari dua cara berikut:

    • Di header Set-Cookie:

      Set-Cookie: __Host-name=value; Secure; Path=/; SameSite=None; Partitioned;
      
    • Dalam JavaScript:

      cookieStore.set({
      name: '__Host-name',
      value: 'value',
      secure: true,
      path: '/',
      sameSite: 'none',
      // Set a partitioned cookie using the attribute below.
      partitioned: true,
      });
      

Contoh

Situs yang berpartisipasi dalam uji coba origin harus menyertakan header berikut dalam responsnya:

Origin-Trial: <ORIGIN TRIAL TOKEN>
Set-Cookie: __Host-name=value; Secure; Path=/; SameSite=None; Partitioned;

Memverifikasi bahwa perintah tersebut berfungsi

Memeriksa header

Jika Anda berhasil memilih ikut serta dalam uji coba origin dan menetapkan cookie yang dipartisi, permintaan berikutnya dari klien Chrome akan menyertakan header permintaan Sec-CH-Partitioned-Cookies: ?0 hingga sesi saat ini berakhir.

Sec-CH-Partitioned-Cookies: ?0
Cookie: __Host-name=value

Jika situs Anda menerima cookie tanpa petunjuk klien ini, keikutsertaan dalam uji coba origin tidak akan berhasil dan cookie yang Anda terima tidak dipartisi.

Respons yang tidak menyertakan header Set-Cookie dengan Partitioned tidak akan memengaruhi status partisipasi uji coba origin situs.

Jika Anda tidak merespons dengan token yang valid di header Origin-Trial, cookie yang dipartisi di komputer akan dikonversi menjadi cookie yang tidak dipartisi.

Untuk detail selengkapnya, lihat dokumentasi CHIPS di chromium.org.

DevTools

  1. Buka chrome://flags/#partitioned-cookies dan ubah setelan ke "Enabled".
  2. Mulai ulang Chromium dengan mengklik tombol "Luncurkan Ulang" di pojok kanan bawah, atau dengan membuka chrome://restart.
  3. Buka chrome://settings/cookies dan pastikan tombol pilihan disetel ke "Izinkan semua cookie" atau "Blokir cookie pihak ketiga dalam mode Samaran".
  4. Muat situs dengan sematan.
  5. Buka Open DevTools ke Application > Cookies > yourSite, lalu cari kolom Partition Key di DevTools.

Detail tambahan

Persyaratan cookie

  • Cookie yang dipartisi harus ditetapkan dengan Secure dan Path=/.
  • Atribut SameParty tidak dapat digunakan bersama Partitioned.

Chrome akan menerapkan aturan ini untuk cookie yang ditetapkan dengan atribut Partitioned, baik partisi cookie diaktifkan atau dinonaktifkan. Cookie yang tidak disetel dengan benar akan ditolak.

Jika partisi cookie dinonaktifkan, tetapi cookie ditetapkan dengan atribut yang benar, Chrome akan mengabaikan atribut Partitioned dan cookie yang dihasilkan akan tetap dikirim dalam permintaan ke host-nya di situs tingkat teratas yang berbeda dengan tempat cookie ditetapkan.

Cookie yang dipartisi juga harus menyertakan atribut SameSite=None, agar cookie dapat dikirim dalam konteks pihak ketiga di browser yang tidak mendukung partisi cookie.

JavaScript dan pekerja layanan

Frame yang ikut serta dalam uji coba origin akan memiliki akses untuk membaca dan menulis cookie yang dipartisi melalui JavaScript API seperti document.cookie dan CookieStore API. Frame yang tidak ada dalam skrip uji coba tidak akan dapat membaca atau menulis cookie yang dipartisi.
Uji coba origin CHIPS saat ini tidak didukung di pekerja layanan.

Berinteraksi dan berbagi masukan