InteractiveAdvertisingBureau / USPrivacy

Technical specifications to support US Privacy initiatives, starting with CCPA (California Consumer Privacy Act)
67 stars 25 forks source link

Proposal: Ensuring CMP cross-context consistency with Broadcast Channel API #20

Open Leedehai opened 1 year ago

Leedehai commented 1 year ago

This issue proposes a way to deal with CMP inconsistencies across browsing contexts (e.g. tabs or iframes) from the same origin.

Problem

Currently, the spec cannot guarantee the consent states’ consistency across multiple browsing contexts in the same client. For example, a user might be perplexed by this situation:

The cause of this situation is that the CMPs running in multiple tabs’ JS contexts don’t have a way to synchronize their states.

Idea

The spec shall add in the CMP implementation guideline doc that

janwinkler commented 1 year ago

@lamrowena move the proposal to GPP?

anderagakura commented 1 year ago

I have a question : No matter if the consent is different between Tab 1 and Tab 2 from this visitor, the negative consent is not supposed to be superior to a positive consent? Which means that the vendors behind will have to monitor

Leedehai commented 1 year ago

Indeed, the CMP vendor needs to listen to states broadcast from CMPs running in other browser contexts (e.g. tabs), as mentioned

The CMP instance shall add a listener on the channel object so as to receive notifications from peer CMP instances from other browsing contexts. channel.onmessage = (event) => { useMessageData(event.data); };