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

Upgrade User ID Module Privacy Support #6433

Open
bretg opened this issue Mar 17, 2021 · 11 comments
Open

Upgrade User ID Module Privacy Support #6433

bretg opened this issue Mar 17, 2021 · 11 comments

Comments

@bretg
Copy link
Collaborator

bretg commented Mar 17, 2021

Type of issue

Enhancement

Description

User ID modules cannot easily get the CCPA consent string. When we built the RealTimeData infrastructure, we made it easy for all RTD sub-modules to obtain all known consent data - every RTD internal interface includes a userConsent data structure so each one doesn't have to dig them up itself.

We should upgrade the User ID module to do this same thing.

  1. Add a function in the core User ID module similar to the RTD getConsentData() function:
function getConsentData() {
  return {
    gdpr: gdprDataHandler.getConsentData(),
    usp: uspDataHandler.getConsentData(),
    coppa: !!(config.getConfig('coppa'))
  }
}
  1. Update the existing consentData data structure used by UserID-core to call sub-modules

  2. Confirm that every sub-module will not choke when receiving these parameters

  3. Upgrade SharedId sub-module to make use of these parameters:

@patmmccann
Copy link
Collaborator

patmmccann commented Mar 18, 2021

Our approach has been to set the device access flag on opt out, which takes care of the problem that some userIds aren't gathering the usp string. If this is solved, would there be any remaining need for deviceAccess?

@patmmccann
Copy link
Collaborator

patmmccann commented Mar 19, 2021

One note, some userId modules are not facing this limitation, eg

const uspString = uspDataHandler.getConsentData();

I think your step 4 above would likely need to include converting those over to the new object as well

@smenzer
Copy link
Collaborator

smenzer commented Mar 19, 2021

I can see the value in providing all relevant privacy jurisdiction fields in a single function/object like @bretg mentions, but I agree with @patmmccann that this is already partially implemented; we are also retrieving the CCPA uspString already:

'us_privacy': uspDataHandler.getConsentData() || '',

@gglas
Copy link

gglas commented Apr 12, 2021

@bretg are there pressing implementation issues for this, or should we just move it into the backlog?

@bretg
Copy link
Collaborator Author

bretg commented Apr 12, 2021

Yes, I think this needs to happen, specifically because SharedId and PubCommon should be paying attention to these values. Adding @jdwieland8282

@smenzer
Copy link
Collaborator

smenzer commented Apr 12, 2021

@bretg maybe I’m missing something but can’t these values already be retrieved by shared Id and pubcommon? We are ingesting them in our module already as do a few others...

@patmmccann
Copy link
Collaborator

Is #6673 a duplicate @smenzer ?

@smenzer
Copy link
Collaborator

smenzer commented May 6, 2021

Is #6673 a duplicate @smenzer ?

The difference in my request is that we modify the existing consent data parameter (which contains only GDPR today) to support everything (similar to the getconsentdata function described here would provide) rather than passing some data in the function call and requiring another method to get the rest.

@bretg id be happy to have the two issues merged together...what are your thoughts?

@bretg
Copy link
Collaborator Author

bretg commented Dec 3, 2021

Agree that these two issues are essentially the same. I've updated the description of this issue to re-use the existing consentData param rather than adding a new one.

@smenzer
Copy link
Collaborator

smenzer commented Dec 3, 2021

with the updates from @bretg I agree that these are the same now. I can close out #6673 in favor of this one. thanks Bret!

@patmmccann
Copy link
Collaborator

related #10276

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Ready for Dev
Development

No branches or pull requests

7 participants