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

eids permissioning scheme #5814

Closed
jdwieland8282 opened this issue Oct 1, 2020 · 3 comments
Closed

eids permissioning scheme #5814

jdwieland8282 opened this issue Oct 1, 2020 · 3 comments

Comments

@jdwieland8282
Copy link
Member

Type of issue

feature request

Description

Do Publishers need additional controls for determining which user ids go to which bid adapters?  Publishers can currently control what User id modules they deploy and which bid adapters they integrate with.  Are their scenarios where a publisher would deploy a user id module but decide NOT to send the resulting user id to a bid adapter they've integrated with? If we believe there are then a permissioning structure in the eids config is needed. 

Proposed Structure

pbjs.setConfig({
    userSync: {
        userIds: [{
            name: "MODULE NAME",
            **bidders: ['bidderA', 'bidderB'], // new permissions field. This ID can only go to these bidders.**
            params: {
                ...
            }
        }]
    }
});

OpenRTB support

{
    ext: {
        prebid: {
            data: {
                bidders: ['bidderA','bidderB']
            }
        }
    }
}
@bretg
Copy link
Collaborator

bretg commented Oct 1, 2020

Implications for PBJS:

  • something would need to modify the bidRequest object before going to each bidder.
  • unclear whether this is PBJS-core or perhaps its just done through a hook in the UserId module itself

Implications for Prebid Server:

  • Since pubs can define that some eids are global, while other eids are bidder-specific, we'll need to extend the permissioning scheme.

Solution: put eids permissions alongside FPD permissions. e.g.

{
    ext: {
        prebid: {
            data: {
                eidpermissions: [   // prebid server will use this to filter user.ext.eids
                   {"source": "sharedid.org", "bidders": ["*"]},
                   {"source": "neustar.biz", "bidders": ["bidderB"]},
                   {"source": "id5-sync.com", "bidders": ["bidderA","bidderC"]}
                ]
            }
        }
    }
}

The question is: who's going to create this eidspermissions block? The pbsBidAdapter can't do it alone because getConfig({userSync.userIds}) provides module name not eids.source.

I'll get the Prebid Server team building the server-side code to support eidspermissions while the PBJS team figures out how to get the data into openrtb. Note that Prebid Server will assume the default permission is "*" if a source isn't specified.

Note that the pbsBidAdapter should only include bidders that are server-side bidders. It will ignore unknown bidders with a warning.

@bretg
Copy link
Collaborator

bretg commented Dec 9, 2020

Updated openrtb spec

@gglas
Copy link

gglas commented Mar 8, 2021

@jdwieland8282 we think this issue is closed, please let us know if any reason to reopen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants