GH GambleHub

Zarządzanie zgodą

1) Warunki i granice odpowiedzialności

Zgoda: dobrowolne, świadome, konkretne i jednoznaczne wyrażenie woli; może zostać cofnięty.
Podstawa prawna: zgoda jest tylko jedną z opcji (umowa, podstawa prawna, uzasadniony interes itp.). Model musi przechowywać zarówno podstawę, jak i cel.
Cel: powód atomowy: analityka, personalizacja, reklamy, email_marketing, data_sharing_vendor_X.
Granularność: zgody są przechowywane przez cele, kanały, sprzedawcy, regiony, kategorie danych.
Profil tematyczny: osoba, urządzenie, gospodarstwo domowe, konto dziecka (specjalne zasady dla małoletnich).

2) Cykl życia zgody

1. Kolekcja: baner/CIW, ustawienia w profilu, API/SDK, kanał offline (centrum kontaktowe).
2. Walidacja: wiek, region, dostępność alternatyw (bez „ciemnych wzorów”).
3. Zarejestruj się, aby utworzyć zdarzenie opt-in i aktualną migawkę dla celów.
4. Dystrybucja: publikacja wydarzeń do autobusu, aktualizacja buforów na krawędzi, synchronizacja z dostawcami.
5. Wdrożenie: zastosowanie w czasie rzeczywistym (bramki/piksele/SDK), w partii (ETL/analityka), w ML-rurociągach.
6. Zmiana/odwołanie: natychmiastowy zakaz nowego gromadzenia/aktywacji, późniejsze „oczyszczanie” danych dotyczących polityki historycznej.
7. Audyt/sprawozdawczość: możliwość uzyskania zgody w momencie przetwarzania (kto, kiedy, jaka wersja tekstu).

3) Elementy architektoniczne

CMP (Consent Management Platform): UI/SDK + API formatowanie opcji zgody dla UX/jurysdykcji; źródło prawdy przez teksty i wersje.
Rejestr zgody: niezawodne repozytorium stanów i zdarzeń zgody (dziennik tylko do załączenia + bieżąca projekcja).
Zgoda PDP/PEP: Decyzja polityczna/Punkt egzekucyjny. PDP decyduje "czy to możliwe? "PEP stosuje rozwiązanie do bramy API, ETL, SDK itp.
Pamięć podręczna krawędzi zgody: niskie opóźnienie do sprawdzania obwodu.
Partner/GPP/IAB gateway: tłumaczenie lokalnych celów na sygnały partnerskie i odwrotnie.
Dane Lineage & Tagging: oznaczanie danych za zgodą/flagami bazowymi w całym łańcuchu.

4) Model danych (schematy)

Migawka zgody użytkownika (uproszczona):
json
{
"subject_id": "usr_123",
"subject_scope": "user",
"region": "EU",
"legal_basis": {
"analytics": "consent",
"personalization": "consent",
"security": "legitimate_interest",
"contract_core": "contract"
},
"purposes": {
"analytics": {"status": "granted", "version": "v5", "updated_at": "2025-10-31T13:20:10Z"},
"personalization": {"status": "denied", "version": "v5", "updated_at": "2025-10-31T13:21:31Z"},
"ads": {"status": "denied", "version": "v5", "updated_at": "2025-10-31T13:21:31Z"},
"email_marketing": {"status": "granted", "channel":"email","updated_at":"2025-10-31T13:22:05Z"}
},
"text_bundle": {"locale":"uk-UA","policy_version":"2025-09"},
"evidence": {"capture_ip":"203. 0. 113. 5","capture_ua":"Chrome/142"}
}
Zdarzenie zgody (tylko dodatek):
json
{
"event_id": "cse_987",
"subject_id": "usr_123",
"purpose": "personalization",
"previous": "denied",
"current": "granted",
"legal_basis": "consent",
"policy_version": "2025-09",
"captured_at": "2025-10-31T13:21:31Z",
"channel": "web",
"evidence": {
"banner_id": "cmp_v3",
"text_hash": "sha256:...",
"ip": "203. 0. 113. 5",
"ua": "Chrome/142",
"locale": "uk-UA"
}
}

5) Protokoły sygnału i dystrybucja

Web/App/SDK: cookie/lokalne przechowywanie/bezpieczne przechowywanie + podpis/kontrola integralności; auto-resink przy logowaniu.
Po stronie serwera: nagłówki 'X-Consent-Token '/' X-Purposes', dwukierunkowa wymiana z renderowaniem SSR/krawędzi.
Partnerzy/sprzedawcy: tłumaczenie na ich formaty (na przykład wektor docelowy, sygnał ogólny „GPP/TCF”); w przypadku awarii - sygnał zerowy/tryb ograniczony.
Kanał offline: rejestracja zgody/pola wyboru audio przez operatora z późniejszą weryfikacją i powiązaniem z "subject _ id'.

6) Wykonanie: gdzie i jak ruch jest „cięty”

Na API Gateway (PEP):
  • Zablokować punkty końcowe/pola bez zgody (/profile/enrich ,/ads/,/events/track).
  • Mutacja odpowiedzi/żądanie: śledzenie cięcia, pola personalizacji, identyfikatory.
  • Przypisz kontekst zgody do żądania backendu (znaczki JWT lub poszczególne nagłówki).
W strumieniach danych:
  • Transformator zdarzeń usuwa/maskuje pola za pomocą flag zgody.
  • Oznaczenie zbioru danych: 'zestaw danych. consent_scope=analytics:granted; reklamy: odrzucone ".
  • W rurociągu ML wykluczone są zapisy bez odpowiedniej zgody; wyłącza szkolenie/aktywację w celach zabronionych.

7) Pseudokoda: Rozwiązanie bramy

python def enforce_consent(request, consent_snapshot):
purpose = map_endpoint_to_purpose(request. path) # /ads/ -> "ads"
basis  = consent_snapshot. legal_basis. get(purpose)
status = consent_snapshot. purposes. get(purpose, {}). get("status", "denied")

if basis! = "consent": # e.g. security/contract - allowed without return ALLOW banner

if status!= "granted":
return DENY # or ALLOW with redaction if degradation is allowed

return ALLOW

8) Wersioning i provability

Wersja tekstu zgody: zachowaj 'policy _ version', 'text _ hash', 'banner _ id'.
Locale i region: jaki tekst i w jakim języku jest pokazany.
Migawka w czasie przetwarzania: możliwość odpowiedzi "dlaczego reklama została pokazana 2025-10-15 o 09:03? ».
Immutable log: WORM/append-only with crypto event signature.

9) Przypadki szczególne

małoletni: walidacja wieku, zgoda rodziców, indywidualne cele i terminy.
Gość → login: łączenie anonimowego tokena z kontem; reguły w konflikcie (najsurowsze wygrywa).
Multi-device: consistent resync; podczas odwoływania - push-disabled tokens na wszystkich urządzeniach.
Tryby regionalne: „ścisłe” (UE) vs „opt-out” (niektóre rynki) - zmiana ustawień wstępnych CMP.
Testy A/B: eksperymenty z danymi są odrębnym celem eksperymentu; bez niego - tylko testy funkcjonalne bez danych osobowych.
Prawo do usunięcia: Wycofanie może wywołać usunięcie/anonimizację historycznych danych docelowych (polityka „purge on revoke”).

10) Anty-wzory

Jedna „wspólna” skrzynka na wszystko.
Brak wersji tekstowych i provability of the show.
Przechowuj tylko flagę plików cookie bez rejestru serwera.
Stosowanie zgody tylko w UI, a nie w ETL/ML/wywóz.
Sprzeczne źródła prawdy (SDK i backend).
Ciemne wzory, narzucające zgodę: ryzyko prawne i reputacyjne.

11) Obserwowalność i wskaźniki

Zasięg: odsetek ruchu za ważnym tokenem zgody.
Opóźnienie PDP: Czas podejmowania decyzji na obwodzie.
Drift: niedopasowanie między SDK a migawką serwera.
Cofnij SLA: czas odwołania → pełna dezaktywacja/wyczyść czas.
Zgodność dostawcy - procent połączeń partnerskich z prawidłowym sygnałem.
Incydenty: próby przetwarzania bez zgody, zablokowane połączenia.

Deski rozdzielcze: „lejki zgody”, mapa regionów/kanałów, mapy awarii termicznej.

12) Badanie i weryfikacja

Testy kontraktowe PDP/PEP: tabela prawdy według kombinacji cel/region.
Testy chaosu/dryfu: niezsynchroniczne stany SDK Wygaśnięcie pamięci podręcznej TTL.
Wersje CMP: A/B walidacja tekstów i neutralność UX (brak ciemnych wzorów).
E2E odwzorowanie: user-revoke event → no sending to partner pixels and pipelines.

13) Zdolności wzajemnie powiązane

Anonimizacja/pseudonimizacja: wykonanie awarii przed i po depersonalizacji.
Szyfrowanie i ochrona tokenu/dziennika KMS.
Routing geograficzny: wybór regionalnych tekstów/zasad.
Obserwowalność: prywatne deski rozdzielcze bez danych osobowych; korelacja tylko przez żetony.
Rodowód danych: w każdym zbiorze danych - odcisk zgody.

14) Mini przepisy kulinarne

Deklaracyjna polityka celowa (przykład YAML):
yaml purposes:
analytics:
legal_basis: consent enforcement: redact_fields: [ad_id, gaid, idfa]
personalization:
legal_basis: consent enforcement: deny_endpoints: [/recs/, /profile/enrich]
security:
legal_basis: legitimate_interest enforcement: allow email_marketing:
legal_basis: consent channel: email
Tag wydarzenia w autobusie:

event. meta. consent. analytics = granted    denied event. meta. consent. ads    = denied event. meta. legal_basis    = consent    contract    li
Dane dotyczące odzysku rozliczeniowego:

on user_revoke(purpose):
mark subject_id + purpose as "purge_pending"
schedule purge jobs over datasets with lineage(purpose)
emit audit_event("purge_started", scope=purpose)

15) Lista kontrolna architekta

1. Czy istnieje jeden rejestr i niezmienny dziennik zgody?
2. Czy cele są wyznaczone wszędzie pod względem atomowym i wszędzie?
3. Czy jest egzekucja na obwodzie, w strumieniach, w analityce i ML?
4. Wdrożono politykę sprzątania danych zwrotnych i historycznych?
5. Czy migawki interfejsu użytkownika/SDK/serwera i mechanizmy resync są spójne?
6. Skonfigurowany zakres/Drift/Cofnij mierniki SLA i raportowanie?
7. Czy istnieje księga wypadków (naruszenia, skargi, regulator)?
8. Czy wspierane są specjalne systemy (dzieci, regiony, partnerzy B2B)?

Wniosek

Zarządzanie zgodą nie jest oknem modalnym, ale funkcją architektoniczną typu end-to-end: od deklarowania celów i wersji tekstów po maszynowe wykonywanie decyzji w czasie rzeczywistym i późniejsze raportowanie. Ścisły model danych, pojedynczy rejestr, PDP/PEP na wszystkich warstwach, pełna telemetria i procedury czyszczenia zmieniają zgodność w przewagę konkurencyjną - zaufaną platformę.

Contact

Skontaktuj się z nami

Napisz do nas w każdej sprawie — pytania, wsparcie, konsultacje.Zawsze jesteśmy gotowi pomóc!

Telegram
@Gamble_GC
Rozpocznij integrację

Email jest wymagany. Telegram lub WhatsApp są opcjonalne.

Twoje imię opcjonalne
Email opcjonalne
Temat opcjonalne
Wiadomość opcjonalne
Telegram opcjonalne
@
Jeśli podasz Telegram — odpowiemy także tam, oprócz emaila.
WhatsApp opcjonalne
Format: kod kraju i numer (np. +48XXXXXXXXX).

Klikając przycisk, wyrażasz zgodę na przetwarzanie swoich danych.