Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setting Prebid Default for TID to off in prebid 8 #9781

Closed
jtollestrup opened this issue Apr 6, 2023 · 8 comments · Fixed by BeOpinion/Prebid.js#12 or #10129
Closed

Setting Prebid Default for TID to off in prebid 8 #9781

jtollestrup opened this issue Apr 6, 2023 · 8 comments · Fixed by BeOpinion/Prebid.js#12 or #10129
Assignees

Comments

@jtollestrup
Copy link

Due to privacy concerns regarding back end stitching of data utilizing the TID, the publisher committee has elected to flip the default in Prebid for TID to off and allow each publisher to make their individual determination to turn this feature on.

@dgirardi
Copy link
Collaborator

dgirardi commented Apr 6, 2023

Is this referring to imp.ext.tid, source.tid, or both?

For source.tid this needs, in general, an update to every adapter. imp.ext.tid would be easier to toggle centrally.

@jtollestrup
Copy link
Author

Both.

@jtollestrup
Copy link
Author

We met with Prebid legal today and they strongly recommended that this feature be defaulted off.

@patmmccann
Copy link
Collaborator

TBD: should the config toggle be in activity control or its own top level flag?

@jdwieland8282
Copy link
Member

The Identity PMC supports setting TID to off by default. The group discussed the topic in our Identity PMC mtg on 4/26.

@dgirardi
Copy link
Collaborator

dgirardi commented May 4, 2023

Many adapters include auctionId as part of their payload, separately from source.tid. This is especially common for those that do not use ORTB, but not limited to them. What should we do about that? replace them with a random UUID?

@dgirardi
Copy link
Collaborator

dgirardi commented May 4, 2023

Here's an alternative proposal:

  • refactor every usage of auctionId that is clearly interchangeable with source.tid as discussed above;
  • when it's not clear (see below), leave it untouched, and:
  • when transaction ID are turned off, add a check on outgoing network requests, and forcibly cancel requests that contain auctionId.

This way, when TIDs are turned on, adapters will continue to work as if nothing changed; when they are turned off, we can have good confidence that data won't be leaked.

Otherwise we don't have a good way to deal with a large number of adapters that use a pattern like this:

var payload = {
auctionId: bidRequests[0].auctionId,
transactionId: bidRequests[0].auctionId,
bids: sizeIds,
website: bidRequests[0].params.website,

in this case, it's clear that transactionId is meant to be the TID and should be protected by the new control we are introducing for 8. But we do not know what to do with auctionId - removing it has a good chance to unnecessarily break it.

I'll add that IMO it's too early to turn TIDs off by default - there's a good chance that it will break so many adapters that the vast majority of publishers will be de-facto forced to turn them back on again.

@dgirardi
Copy link
Collaborator

The enforcement on network requests could also be made into a module - if we are OK with the default being "TID are off, but we don't know if they are actually being sent out".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment