Mulai Chrome 100, uji coba origin CHIPS memungkinkan keikutsertaan cookie ke "dipartisi" dengan stoples kue terpisah per situs tingkat atas.
Perubahan
- September 2022: Lihat informasi terbaru tentang cara memperpanjang uji coba origin melalui Chrome 106.
- Agustus 2022: Menghapus persyaratan
path=/
(lihat github.com/privacycg/CHIPS/pull/49). - Juni 2022: Mulai Chrome 104, menetapkan cookie dengan atribut
Partitioned
tidak lagi memerlukan penghapusan atributDomain
. - Mei 2022: Mulai Chrome 103, pengiriman header
Accept-CH: Sec-CH-Partitioned-Cookies
tidak lagi diperlukan untuk ikut serta dalam uji coba origin.
Apa itu CHIPS?
Cookie Memiliki Status Partisi Independen (CHIPS) adalah proposal Privacy Sandbox yang memungkinkan developer mengikutsertakan cookie ke dalam "dipartisi" dengan stoples kue terpisah per situs tingkat atas.
Cookie pihak ketiga yang dipartisi terikat dengan situs tingkat teratas tempat cookie tersebut pertama kali ditetapkan dan tidak dapat diakses dari tempat lain. Tujuannya adalah agar cookie dapat disetel oleh layanan pihak ketiga, tetapi hanya dibaca dalam konteks situs tingkat atas tempat cookie tersebut pertama kali ditetapkan.
Untuk siapa uji coba origin ini?
Uji coba ini tersedia sebagai uji coba origin pihak ketiga, yang memungkinkan penyedia konten sematan mencoba fitur baru di beberapa situs.
Jika situs mendaftar ke uji coba sebagai pihak pertama, partisi cookie juga akan tersedia untuk penyedia konten pihak ketiga di situs tersebut. Penyedia pihak ketiga ini 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
Chrome Stabil 103.
Langkah
Untuk mendaftar ke uji coba origin dan mendapatkan token untuk domain Anda, buka halaman uji coba origin CHIPS.
Sertakan header
Origin-Trial
dengan token yang valid di setiap respons dengan headerSet-Cookie
yang menyertakanPartitioned
:Origin-Trial: <ORIGIN TRIAL TOKEN>
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;
Di 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;
Memastikan kode berfungsi
Memeriksa header
Jika Anda berhasil memilih ikut serta dalam uji coba origin dan menetapkan cookie terpartisi, 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 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 mengetahui detail selengkapnya, lihat dokumentasi CHIPS di chromium.org.
DevTools
- Buka
chrome://flags/#partitioned-cookies
dan ubah setelan menjadi "Aktif". - Mulai ulang Chromium dengan mengklik "Luncurkan kembali" di pojok kanan bawah, atau dengan membuka chrome://restart.
- Buka
chrome://settings/cookies
dan pastikan tombol pilihan disetel ke "Izinkan semua cookie" atau "Blokir cookie pihak ketiga dalam mode Samaran". - Muat situs dengan sematan.
- Buka Buka DevTools ke Application > Cookie > yourSite dan cari kolom Partition Key di DevTools.
Detail tambahan
Persyaratan cookie
- Cookie yang dipartisi harus ditetapkan dengan
Secure
. (Path=/
tidak lagi diperlukan: lihat github.com/privacycg/CHIPS/pull/49). - Atribut
SameParty
tidak dapat digunakan bersama denganPartitioned.
Chrome akan menerapkan aturan ini untuk cookie yang ditetapkan dengan atribut Partitioned
, baik partisi cookie diaktifkan maupun dinonaktifkan. Cookie yang tidak ditetapkan 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 atas yang berbeda dari tempat partisi tersebut ditetapkan.
Cookie yang dipartisi juga harus menyertakan atribut SameSite=None
, untuk memungkinkan cookie 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 menggunakan JavaScript API seperti document.cookie
dan CookieStore API. Frame yang tidak berada dalam skrip uji coba tidak akan dapat membaca atau menulis cookie yang dipartisi.
Uji coba origin CHIPS tidak didukung di pekerja layanan.
Berinteraksi dan memberikan masukan
- Sampaikan masalah dan ikuti diskusi di GitHub.
- Ajukan pertanyaan dan ikuti diskusi di repo Dukungan Developer Privacy Sandbox.
- Pelajari berbagai cara untuk memberikan masukan terkait proposal Privacy Sandbox.