Dowiedz się, jak kontrolować zarządzanie odbiorcami za pomocą zasad dotyczących uprawnień, lub przekaż dostęp innej firmie, konfigurując adres URL uprawnień z rozszerzeniem .well-known.
Źródło kontekstu wywołującego joinAdInterestGroup()
musi odpowiadać źródłom pochodzenia właściciela grupy zainteresowań, więc funkcja joinAdInterestGroup()
musi być wywoływana z elementu iframe (np. z platformy DSP), chyba że źródło pochodzenia właściciela grupy zainteresowań pasuje do pochodzenia bieżącego dokumentu (na przykład witryny z własnymi grupami zainteresowań).
joinAdInterestGroup()
wymaga pozwolenia od:
- odwiedzaną witrynę,
- Właściciel grupy zainteresowań
Oznacza to, że malicious.example
nie może wywołać funkcji joinAdInterestGroup()
w przypadku grupy zainteresowań należącej do użytkownika dsp.example.com
bez dsp.example.com
przyznania odpowiednich uprawnień.
Zgoda z odwiedzonej witryny
Uprawnienia można przyznawać z tego samego źródła lub z innych domen.
Domyślnie uprawnienia są przyznawane w przypadku wywołań funkcji joinAdInterestGroup()
z tego samego źródła co odwiedzana witryna (czyli z tego samego źródła co ramka najwyższego poziomu bieżącej strony). Witryny mogą wyłączać wywołania funkcji joinAdInterestGroup()
za pomocą nagłówka zasad uprawnień join-ad-interest-group
.
Wywołanie joinAdInterestGroup()
z innych domen (z innych domen niż bieżąca strona) może się udać tylko wtedy, gdy odwiedzana witryna ma ustawioną zasadę uprawnień zezwalającą na wywołania joinAdInterestGroup()
z elementów iframe z innych domen.
Uprawnienie właściciela grupy zainteresowań
Uprawnienie właściciela grupy zainteresowań jest domyślnie przyznawane przez wywołanie metody joinAdInterestGroup()
z elementu iframe z tym samym źródłem co konto właściciela grupy zainteresowań. Na przykład element iframe dsp.example.com
może wywoływać metodę joinAdInterestGroup()
w przypadku grup zainteresowań należących do firmy dsp.example.com
.
Ogólnie rzecz biorąc, pole joinAdInterestGroup()
może działać na stronie lub w elemencie iframe w domenie właściciela albo być przekazywane do innych domen za pomocą listy dostępnej pod adresem URL w .well-known
.
Gdy ramka przekierowana do jednej domeny wywołuje joinAdInterestGroup()
, leaveAdInterestGroup()
lub clearOriginJoinedAdInterestGroups()
w przypadku grupy zainteresowań z innym właścicielem, przeglądarka pobierze adres URL https://owner.domain/.well-known/interest-group/permissions/?origin=frame.origin
, gdzie owner.domain
to domena, do której należy grupa zainteresowań, a frame.origin
to źródło ramki. Pobieranie używa trybu pomijania danych logowania za pomocą klucza partycji sieciowej ramki, która wywołała metodę. Aby uniknąć nieoczekiwanego wycieku danych z innych domen przez zwróconą obietnicę, pobieranie używa trybu cors. Pobrana odpowiedź powinna mieć typ MIME w formacie JSON i mieć format:
{ "joinAdInterestGroup": true/false,
"leaveAdInterestGroup": true/false
}
Wskazuje, czy punkt początkowy ścieżki ma uprawnienia do dołączania lub opuszczania grup zainteresowań należących do domeny, do której zostało wysłane żądanie. Brakujące uprawnienia są uznawane za fałsz. Wywołanie navigator.joinAdInterestGroup()
z wartością lifetimeMs
o wartości 0 w praktyce opuszcza grupę zainteresowań, więc joinAdInterestGroup: true
zezwala również punktowi źródłowemu na wywołanie navigator.leaveAdInterestGroup()
, nawet jeśli brakuje parametru leaveadInterestGroup
lub ma on wartość fałsz. Pamiętaj, że zarówno leaveAdInterestGroup()
, jak i clearOriginJoinedAdInterestGroups()
sprawdzają uprawnienie leaveAdInterestGroup
.