Mendelegasikan pengelolaan audiens kepada pihak ketiga

Pelajari cara mengontrol pengelolaan audiens menggunakan Kebijakan Izin atau mendelegasikan kepada 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:

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

Izin dari situs yang dikunjungi

Izin dapat diberikan dari origin yang sama atau lintas origin.

Secara default, izin diberikan untuk panggilan joinAdInterestGroup() dari asal yang sama dengan situs yang dikunjungi, (dengan kata lain, dari asal 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 mengizinkan 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 dengan pemilik grup minat. Misalnya, iframe dsp.example.com dapat memanggil joinAdInterestGroup() untuk grup minat yang dimiliki oleh dsp.example.com.

Intinya, 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 dengan pemilik yang berbeda, browser akan mengambil URL https://owner.domain/.well-known/interest-group/permissions/?origin=frame.origin, dengan owner.domain adalah domain yang memiliki grup minat dan frame.origin adalah asal frame. Pengambilan menggunakan mode menghilangkan kredensial, menggunakan Kunci Partisi Jaringan dari frame yang memanggil metode. Untuk menghindari kebocoran data lintas origin melalui Promise yang ditampilkan secara tidak terduga, pengambilan akan menggunakan mode cors. Respons yang diambil harus memiliki jenis MIME JSON dan memiliki format:

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

Menunjukkan apakah asal dalam jalur memiliki izin untuk bergabung atau keluar dari grup minat yang dimiliki oleh domain yang menjadi tujuan pengiriman permintaan. Izin yang tidak ada dianggap salah. Karena memanggil navigator.joinAdInterestGroup() dengan lifetimeMs 0 secara efektif keluar dari grup minat, joinAdInterestGroup: true juga memungkinkan origin memanggil navigator.leaveAdInterestGroup(), meskipun leaveadInterestGroup tidak ada atau ditetapkan ke salah (false). Perlu diperhatikan bahwa leaveAdInterestGroup() dan clearOriginJoinedAdInterestGroups() memeriksa izin leaveAdInterestGroup.