Mendelegasikan pengelolaan audiens kepada pihak ketiga

Pelajari cara mengontrol pengelolaan audiens menggunakan Kebijakan Izin atau mendelegasikan ke pihak ketiga dengan mengonfigurasi URL izin .well-known.

Asal konteks panggilan untuk joinAdInterestGroup() harus cocok dengan asal pemilik grup minat, sehingga joinAdInterestGroup() harus dipanggil dari iframe (misalnya, dari DSP) kecuali jika asal pemilik grup minat cocok dengan asal dokumen saat ini (misalnya, situs dengan grup minatnya sendiri).

joinAdInterestGroup() memerlukan izin dari:

Artinya, malicious.example tidak dapat memanggil joinAdInterestGroup() untuk grup minat yang dimiliki oleh dsp.example.com, tanpa dsp.example.com memberikan izin.

Izin dari situs yang dikunjungi

Izin dapat diberikan dari origin atau lintas origin yang sama.

Secara default, izin diberikan untuk panggilan joinAdInterestGroup() dari origin yang sama dengan situs yang dikunjungi, (dengan kata lain, dari origin yang sama dengan frame tingkat atas halaman saat ini). Situs dapat menggunakan header kebijakan izin join-ad-interest-group untuk menonaktifkan panggilan joinAdInterestGroup().

Memanggil joinAdInterestGroup() lintas origin (origin yang berbeda dengan halaman saat ini) hanya dapat berhasil jika situs yang dikunjungi telah menetapkan kebijakan izin yang memungkinkan panggilan ke joinAdInterestGroup() dari iframe lintas origin.

Izin dari pemilik grup minat

Izin pemilik grup minat secara implisit diberikan dengan memanggil joinAdInterestGroup() dari iframe dengan asal yang sama seperti pemilik grup minat. Misalnya, iframe dsp.example.com dapat memanggil joinAdInterestGroup() untuk grup minat yang dimiliki oleh dsp.example.com.

Pada dasarnya, joinAdInterestGroup() dapat berjalan di halaman atau iframe di domain pemilik, atau didelegasikan ke domain lain yang disediakan menggunakan daftar di URL .well-known.

Saat frame yang dibuka ke satu domain memanggil joinAdInterestGroup(), leaveAdInterestGroup(), atau clearOriginJoinedAdInterestGroups() untuk grup minat yang memiliki pemilik berbeda, browser akan mengambil URL https://owner.domain/.well-known/interest-group/permissions/?origin=frame.origin, dengan owner.domain sebagai domain yang memiliki grup minat dan frame.origin adalah asal frame tersebut. Pengambilan menggunakan mode hapus kredensial, dengan menggunakan Kunci Partisi Jaringan dari frame yang memanggil metode tersebut. Untuk menghindari kebocoran data lintas asal melalui Promise yang ditampilkan secara tidak terduga, pengambilan menggunakan mode cors. Respons yang diambil harus memiliki jenis MIME JSON dan memiliki format:

{ "joinAdInterestGroup": true/false,
  "leaveAdInterestGroup": true/false
}

Menunjukkan apakah origin di jalur memiliki izin untuk bergabung atau keluar dari grup minat yang dimiliki oleh domain yang dikirimi permintaan. Izin yang tidak ada dianggap sebagai salah. Karena memanggil navigator.joinAdInterestGroup() dengan lifetimeMs bernilai 0 secara efektif keluar dari grup minat, joinAdInterestGroup: true juga memungkinkan origin memanggil navigator.leaveAdInterestGroup(), meskipun leaveadInterestGroup tidak ada atau disetel ke salah (false). Perhatikan bahwa leaveAdInterestGroup() dan clearOriginJoinedAdInterestGroups() memeriksa izin leaveAdInterestGroup.