Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ea571f8

Browse files
dgirardibretg
andauthored
Prebid.js: document new gppControl_usstates module (prebid#4875)
* Prebid.js: document new `gppControl_usstates` module * fix TOC macro * Update gppControl_usnat.md * wordsmithing * wordsmithing --------- Co-authored-by: bretg <[email protected]>
1 parent 49faf9c commit ea571f8

File tree

2 files changed

+134
-4
lines changed

2 files changed

+134
-4
lines changed

dev-docs/modules/gppControl_usnat.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ sidebarType : 1
1212
---
1313

1414
# GPP Control Module - USNat string
15-
1615
{: .no_toc }
1716

1817
- TOC
@@ -28,7 +27,7 @@ This resource should not be construed as legal advice and Prebid.org makes no gu
2827

2928
This consent management control module is designed to support the [Global Privacy Platform](https://iabtechlab.com/gpp/) Section 7 string, USNat. For more Prebid-related background, see [Prebid MSPA Support](/features/mspa-usnat.html). In sum, the USNat string is intended to unify various state laws into a single privacy string, with participants' behavior governed by the IAB's ([MSPA](https://www.iabprivacy.com/#)). It is intended to complement, not replace, the GPP consent management module, which gathers GPP consent strings and makes them available to vendor integrations. The goal is to gather sensible and conservative [activity controls](/dev-docs/dev-docs/activity-controls.html) for elements of Prebid.js given various expressions of the [USNat consent string](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Sections/US-National/IAB%20Privacy%E2%80%99s%20National%20Privacy%20Technical%20Specification.md).
3029

31-
This module does not support any other GPP section id or local GPP api. Default controls for each section will be added as the section list grows and publishers request support. In order to control activities in a section without a control module, publishers can express their controls directly in the syntax of the [activity control infrastructure](/dev-docs/dev-docs/activity-controls.html). If a publisher wants finer control over section 7 implications on Prebid.js behavior than this module provides (eg not invalidating certain strings), they are able to achieve that using the activity control syntax as an alternative to this module.
30+
This module does not support any other GPP section id or local GPP api. For US state section see the [GPP Control - US State module](/dev-docs/modules/gppControl_usstates.html). In order to control activities in a section without a control module, publishers can express their controls directly in the syntax of the [activity control infrastructure](/dev-docs/dev-docs/activity-controls.html). If a publisher wants finer control over section 7 implications on Prebid.js behavior than this module provides (eg not invalidating certain strings), they are able to achieve that using the activity control syntax as an alternative to this module.
3231

3332
{: .alert.alert-warning :}
3433
Prebid functionality created to address regulatory requirements does not replace each party's responsibility to determine its own legal obligations and comply with all applicable laws. **We recommend consulting with your legal counsel before determining how to utilize these features in support of your overall privacy approach. This module is not yet intended to replace other consent modules; it supplements them.**
@@ -53,8 +52,8 @@ You can also use the [Prebid.js Download](/download.html) page.
5352
- [IAB Global Privacy Platform CMP API Specification](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Core/CMP%20API%20Specification.md)
5453
- [IAB Global Privacy Platform USNat string Specification](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Sections/US-National/IAB%20Privacy%E2%80%99s%20National%20Privacy%20Technical%20Specification.md)
5554
- [Prebid MSPA Support](/features/mspa-usnat.html)
55+
- [Prebid Activity Controls](/dev-docs/dev-docs/activity-controls.html)
5656
- [Prebid Consent Management - US Privacy Module](/dev-docs/modules/consentManagementUsp.html)
5757
- [Prebid Consent Management - GPP Module](/dev-docs/modules/consentManagementGpp.html)
58-
- [Prebid Activity Controls](/dev-docs/dev-docs/activity-controls.html)
59-
- [Prebid Activity Controls -- GPP control module - USNat](/dev-docs/modules/gppControl_usnat.html)
58+
- [Prebid Consent Management - GPP Control - US States module](/dev-docs/modules/gppControl_usstates.html)
6059
- [CMP Best Practices](https://docs.prebid.org/dev-docs/cmp-best-practices.html)
Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
---
2+
layout: page_v2
3+
page_type: module
4+
title: GPP Control - US States
5+
description: If your CMP populates sections 8-12 of the Global Privacy Platform, this module complements the `consentManagementGpp` module to control Prebid.js accordingly.
6+
module_code : gppControl_usstates
7+
display_name : GPP Control - US States
8+
enable_download : true
9+
recommended: true
10+
min_js_version: 8.10.0
11+
sidebarType : 1
12+
---
13+
14+
# GPP Control Module - US state strings
15+
{: .no_toc }
16+
17+
- TOC
18+
{: toc }
19+
20+
{% capture legalNotice %}
21+
This resource should not be construed as legal advice and Prebid.org makes no guarantees about compliance with any law or regulation. Please note that because every company and its collection, use, and storage of personal data is different, you should seek independent legal advice relating to obligations under European and/or US regulations, including the GDPR, the ePrivacy Directive, CCPA, other state privacy laws, etc, and how you implement the tools outlined in this document. Only your lawyer can provide you with legal advice specifically tailored to your situation. Nothing in this guide is intended to provide you with, or should be used as a substitute for, legal advice tailored to your business.
22+
{% endcapture %}
23+
24+
{% include /alerts/alert_important.html content=legalNotice %}
25+
26+
## Overview
27+
28+
This consent management control module is designed to support the [Global Privacy Platform](https://iabtechlab.com/gpp/) US state strings, [GPP sections](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Sections/Section%20Information.md) 8 through 12.
29+
It works by translating them into an equivalent US national string as detailed in [Interpreting USNat strings](/features/mspa-usnat.html#interpreting-usnat-strings), and using it to apply the same [activity restricitons](/features/mspa-usnat.html#usnat-activity-restrictions).
30+
31+
{: .alert.alert-warning :}
32+
Prebid functionality created to address regulatory requirements does not replace each party's responsibility to determine its own legal obligations and comply with all applicable laws. **We recommend consulting with your legal counsel before determining how to utilize these features in support of your overall privacy approach. This module is not intended to replace other consent modules; it supplements them.**
33+
34+
## Page Integration
35+
36+
By default, including this module enables activity restrictions for GPP sections from ID 8 to 12, as long as the [consentManagementGpp](/dev-docs/modules/consentManagementGpp.html) module is also included and configured.
37+
Optional configuration options are:
38+
39+
{: .table .table-bordered .table-striped }
40+
| Param | Type | Description | Example |
41+
| --- | --- | --- | --- |
42+
| gpp.mspa | `Object` | | |
43+
| gpp.mspa.sids | `Array` | GPP SIDs that should be covered by activity restrictions. Defaults to all US state SIDs (`[8, 9, 10, 11, 12]`). This is the only value needed for normal operation. Other options are for special cases and future-proofing. | `[8, 9]` |
44+
| gpp.mspa.sections | `Object` | Map from section ID to per-section configuration options | `{8: {name: 'usca'}}` |
45+
| gpp.mspa.sections.name | `String` | GPP API name to use for the section. Defaults to the names given listed under [section information -> section IDs](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Sections/Section%20Information.md#section-ids). This option would only be used if your CMP has named their sections in a non-standard way. | `uscav3` |
46+
| gpp.mspa.sections.normalizeAs | `integer` | Normalize the flags for this section as if it were the number provided. See [example](#normalize-example). Each section defaults to its own ID. | `8` |
47+
48+
### Examples
49+
50+
#### Enable activity controls for certain sections only
51+
52+
```javascript
53+
pbjs.setConfig({
54+
consentManagement: {
55+
gpp: {
56+
mspa: {
57+
sids: [8, 9] // enable only for CA and VA
58+
}
59+
}
60+
}
61+
})
62+
```
63+
64+
#### Non-standard GPP API names
65+
66+
If the CMP has a non-standard label for a given section, the `name` parameter may be used:
67+
68+
```javascript
69+
pbjs.setConfig({
70+
consentManagement: {
71+
gpp: {
72+
mspa: {
73+
sections: {
74+
8: {
75+
name: 'uspcav1' // Use 'uspcav1' instead of 'usca' to retrieve section 8 from the CMP
76+
}
77+
}
78+
}
79+
}
80+
}
81+
})
82+
```
83+
84+
#### Select normalization rule
85+
86+
<a id="normalize-example"></a>
87+
88+
This module provides a [normalization algorithm](/features/mspa-usnat.html#interpreting-usnat-strings) for each section from 8 to 12, which it uses to translate each section's data into its equivalent section 7 (usnat) representation.
89+
It is possible to re-use them for other sections; this can be useful if new GPP sections are released and they happen to follow the same format as an exising one. For example, if a new US GPP SID 51 comes along that should be read from the CMP as 'uss51' and normalized the same as California's string, here's the config:
90+
91+
```javascript
92+
pbjs.setConfig({
93+
consentManagement: {
94+
gpp: {
95+
mspa: {
96+
sids: [51], // SID for the 51st state
97+
sections: {
98+
51: {
99+
// expect the CMP to provide section 51, with API name 'uss51', and the same format as section 8 (CA)
100+
name: 'uss51',
101+
normalizeAs: 8
102+
}
103+
}
104+
}
105+
}
106+
}
107+
})
108+
```
109+
110+
## Build the Package
111+
112+
Follow the basic build instructions in the GitHub Prebid.js repo's main [README](https://github.com/prebid/Prebid.js/blob/master/README.md). To include the consent management module and the GPP Control - US states module, an additional option must be added to the **gulp build** command:
113+
114+
```bash
115+
gulp build --modules=consentManagementGpp,gppContol_usstates,bidAdapter1,bidAdapter2
116+
```
117+
118+
You can also use the [Prebid.js Download](/download.html) page.
119+
120+
## Further Reading
121+
122+
- [IAB Global Privacy Platform Full Specification Repository](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform)
123+
- [IAB Global Privacy Platform CMP API Specification](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Core/CMP%20API%20Specification.md)
124+
- [IAB Global Privacy Platform USNat string Specification](https://github.com/InteractiveAdvertisingBureau/Global-Privacy-Platform/blob/main/Sections/US-National/IAB%20Privacy%E2%80%99s%20National%20Privacy%20Technical%20Specification.md)
125+
- [Prebid MSPA Support](/features/mspa-usnat.html)
126+
- [Prebid Activity Controls](/dev-docs/dev-docs/activity-controls.html)
127+
- [Prebid Consent Management - US Privacy Module](/dev-docs/modules/consentManagementUsp.html)
128+
- [Prebid Consent Management - GPP Module](/dev-docs/modules/consentManagementGpp.html)
129+
- [Prebid Consent Management - GPP Control - USNat module](/dev-docs/modules/gppControl_usnat.html)
130+
- [Prebid Activity Controls -- GPP control module - USNat](/dev-docs/modules/gppControl_usnat.html)
131+
- [CMP Best Practices](https://docs.prebid.org/dev-docs/cmp-best-practices.html)

0 commit comments

Comments
 (0)