Mendelegasikan pengelolaan audiens kepada pihak ketiga

Pelajari cara mengontrol pengelolaan audiens dengan 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 yang sama atau lintas origin.

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 teratas halaman saat ini). Situs dapat menggunakan header kebijakan izin join-ad-interest-group untuk menonaktifkan panggilan joinAdInterestGroup().

Panggilan joinAdInterestGroup() lintas origin (origin yang berbeda dari 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 diberikan secara implisit dengan memanggil joinAdInterestGroup() dari iframe dengan origin yang sama dengan pemilik grup minat tersebut. 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 diarahkan 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 origin frame. Pengambilan menggunakan mode hapus kredensial, menggunakan Kunci Partisi Jaringan frame yang memanggil metode. Untuk menghindari kebocoran data lintas origin melalui Promise yang ditampilkan secara tidak terduga, pengambilan data menggunakan mode cors. Respons yang diambil harus memiliki jenis MIME JSON dan berformat:

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

Menunjukkan apakah origin dalam jalur memiliki izin untuk bergabung atau keluar dari grup minat yang dimiliki oleh domain tempat permintaan dikirim. Izin yang tidak ada diasumsikan bernilai salah (false). Karena memanggil navigator.joinAdInterestGroup() dengan lifetimeMs 0 secara efektif membuat origin 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.