Déléguer la gestion des audiences à un tiers

Découvrez comment contrôler la gestion des audiences à l'aide d'une règle d'autorisation ou comment déléguer des autorisations à un tiers en configurant une URL d'autorisation .well-known.

L'origine du contexte d'appel pour joinAdInterestGroup() doit correspondre à celle du propriétaire du groupe de centres d'intérêt. joinAdInterestGroup() devra donc être appelé à partir d'un iFrame (par exemple, depuis une DSP), sauf si l'origine du propriétaire du groupe de centres d'intérêt correspond à celle du document actuel (par exemple, un site Web avec ses propres groupes de centres d'intérêt).

joinAdInterestGroup() a besoin de l'autorisation de:

Cela signifie qu'il n'est pas possible pour malicious.example d'appeler joinAdInterestGroup() pour un groupe de centres d'intérêt appartenant à dsp.example.com sans que dsp.example.com n'accorde l'autorisation.

Autorisation du site consulté

L'autorisation peut être accordée à partir de la même origine ou multi-origine.

Par défaut, l'autorisation est accordée pour les appels joinAdInterestGroup() provenant de la même origine que le site consulté, c'est-à-dire de la même origine que le cadre supérieur de la page actuelle. Les sites peuvent utiliser l'en-tête des règles d'autorisation join-ad-interest-group pour désactiver les appels joinAdInterestGroup().

L'appel de joinAdInterestGroup() en multi-origine (origines différentes de la page actuelle) ne peut aboutir que si le site consulté a défini une règle d'autorisation qui autorise les appels à joinAdInterestGroup() depuis des iFrames multi-origines.

Autorisation du propriétaire du groupe de centres d'intérêt

L'autorisation de propriétaire du groupe de centres d'intérêt est accordée implicitement en appelant joinAdInterestGroup() à partir d'un iFrame ayant la même origine que celle du propriétaire du groupe de centres d'intérêt. Par exemple, un iFrame dsp.example.com peut appeler joinAdInterestGroup() pour les groupes de centres d'intérêt appartenant à dsp.example.com.

Concrètement, joinAdInterestGroup() peut s'exécuter dans une page ou un iFrame du domaine du propriétaire, ou être délégué à d'autres domaines fournis à l'aide d'une liste associée à une URL .well-known.

Lorsqu'un frame navigué vers un domaine appelle joinAdInterestGroup(), leaveAdInterestGroup() ou clearOriginJoinedAdInterestGroups() pour un groupe de centres d'intérêt ayant un propriétaire différent, le navigateur extrait l'URL https://owner.domain/.well-known/interest-group/permissions/?origin=frame.origin, où owner.domain est le domaine qui possède le groupe de centres d'intérêt et frame.origin est l'origine du cadre. La récupération utilise le mode omettre les identifiants, à l'aide de la clé de partition réseau de la trame qui a appelé la méthode. Pour éviter toute fuite inattendue de données multi-origines via la promesse renvoyée, la récupération utilise le mode cors. La réponse récupérée doit être de type JSON MIME et être au format suivant:

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

Indiquer si l'origine du chemin est autorisée à rejoindre ou à quitter les groupes de centres d'intérêt appartenant au domaine auquel la demande est envoyée. Les autorisations manquantes sont considérées comme fausses. Étant donné que l'appel de navigator.joinAdInterestGroup() avec une lifetimeMs de 0 quitte effectivement un groupe de centres d'intérêt, joinAdInterestGroup: true permet également à une origine d'appeler navigator.leaveAdInterestGroup(), même si leaveadInterestGroup est manquant ou est défini sur "false". Notez que leaveAdInterestGroup() et clearOriginJoinedAdInterestGroups() vérifient l'autorisation leaveAdInterestGroup.