Guia d'integració del consentiment de galetes per a l'experiència digital i la reproducció de sessions de FullStory: Manual 2026
FullStory és la plataforma dominant en la categoria d'anàlisi de l'experiència digital per una raó: captura tot de manera predeterminada. Mentre que les eines d'anàlisi tradicionals registren esdeveniments discrets que el desenvolupador ha instrumentat, i les plataformes d'anàlisi de producte registren interaccions més un suplement autocapturat, FullStory captura el DOM completament representat, el rastre del cursor, la temporització de les pulsacions de tecla, el comportament de desplaçament, els clics de fúria, els clics morts, les sol·licituds de xarxa i els errors de JavaScript — i els uneix en enregistraments de sessió que l'analista pot remenar fotograma per fotograma. Aquesta cobertura és el producte. També és per això que FullStory es troba a la intersecció de les regles de consentiment més rigoroses de cada règim de privadesa modern. La guia de reproducció de sessions de l'EDPB de 2023 i les prioritats del grup de treball de 2026 tracten la reproducció de sessions com una categoria de consentiment distinta i més estricta. La CNIL ha estat el regulador més públic sobre el tema, però no és l'únic — el Garante, l'ICO, l'AEPD espanyola i l'AP holandesa han emès posicions alineades. Una implementació de FullStory configurada per a la captura amb prioritat de consentiment, amb l'emmascarament correcte, el control d'accés correcte i el rastre d'auditoria correcte, és una de les eines més poderoses que un editor pot executar; una que no s'ha configurat així és un dels objectius més fàcils que trobarà un regulador.
Per què FullStory es troba en la categoria de consentiment més estricta
Una inicialització de FullStory predeterminada fa el que fa cada eina de reproducció de sessions i més. Estableix galetes de primera part sota l'espai de noms fs_uid i fs_lua que contenen l'identificador de visitant persistent i la marca de temps de darrera activitat, genera un identificador de sessió sota fs_session i comença a transmetre el DOM representat a rs.fullstory.com en mil·lisegons de la càrrega de pàgina. El flux inclou cada esdeveniment d'entrada, cada moviment del ratolí, cada posició de desplaçament, cada transició de pàgina i — quan el mòdul de captura de xarxa està activat — cada resposta XHR i fetch que emet la pàgina, amb els cossos de resposta inclosos tret que l'operador hagi configurat la supressió.
Cadascuna d'aquestes captures activa una porta de consentiment separada. Persistir l'identificador del visitant és una operació d'emmagatzematge i accés sota l'Article 5(3) de la Directiva ePrivacy que requereix un consentiment previ, donat lliurement, específic, informat i inequívoc a tota la zona EEA, el Regne Unit i qualsevol jurisdicció que hagi importat el mateix estàndard. Enregistrar el DOM representat és un tractament de dades personals sota el GDPR perquè el registre visual és suficient per identificar i revelar contingut substantiu sobre l'usuari. Capturar el flux de pulsacions de tecla és una sensibilitat particular: tot el que l'usuari escriu en un camp de formulari es captura fotograma per fotograma, i si el camp no està emmascarant l'enregistrament inclou el contingut escrit. L'EDPB ha estat explícit que la captura de reproducció de sessions és una categoria que requereix un consentiment explícit i granular distint del consentiment d'anàlisi genèric — i que l'emmascarament és un complement al consentiment, no un substitut.
Què escriu FullStory abans del consentiment — i el que s'ha de suprimir
L'inici ràpid estàndard de FullStory instal·la el fragment de seguiment directament al <head> de la pàgina. Això funciona com es documenta i és la font del fracàs de compliment més comú: el fragment s'executa abans que el bàner de galetes s'hagi representat, les galetes fs_uid i fs_session s'escriuen en mil·lisegons, i el flux de reproducció de sessions comença a fluir cap a rs.fullstory.com independentment del que l'usuari decideixi posteriorment. Cada regulador europeu que s'ha pronunciat sobre aquest patró ha resolt de la mateixa manera: les galetes establertes abans del consentiment són il·legals, l'enregistrament capturat abans del consentiment és un tractament il·legal, i l'editor porta la responsabilitat.
Una integració conforme ha d'impedir, per tant, que el fragment de FullStory s'inicialitzi fins que s'hagi concedit la categoria de consentiment rellevant. El patró que funciona en producció és l'API FS.consent() combinada amb l'enregistrament diferit: el fragment es carrega amb FullStory({ orgId: 'XXX', recordOnlyThisIFrame: false }) i s'invoca immediatament FS.shutdown(), llavors s'invoca FS.restart() i FS.consent(true) només després que el CMP indiqui que la categoria de reproducció de sessions s'ha concedit. El patró alternatiu és la injecció d'scripts condicional — el fragment de FullStory s'afegeix al DOM només després que s'hagi concedit el consentiment — que és més net però requereix que l'operador perdi qualsevol vinculació d'identitat prèvia al consentiment que FullStory d'altra manera proporcionaria.
Les galetes i l'emmagatzematge que escriu FullStory
El fragment de FullStory escriu els identificadors següents en la inicialització, tots els quals no són essencials i requereixen consentiment: fs_uid amb una caducitat de diversos anys que conté l'identificador de visitant persistent, fs_lua amb la marca de temps de darrera activitat de l'usuari, fs_session amb l'identificador de sessió, i els marcadors d'estat d'enregistrament que FullStory utilitza internament. Retirar el consentiment ha de, per tant, tant caducar aquestes galetes com cridar FS.consent(false) seguit de FS.shutdown() per aturar una captura posterior, i l'editor ha d'enviar una sol·licitud de supressió a través del punt final de privadesa de FullStory per als enregistraments anteriors de l'usuari.
Mapeig de FullStory als marcs de consentiment
FullStory no implementa de manera nativa IAB TCF ni la Plataforma de Privadesa Global d'IAB — és una plataforma d'experiència digital de primera part, no un proveïdor de tecnologia publicitària. Exposa una API de consentiment nativa i admet un model d'emmascarament privat de manera predeterminada que opera independentment de l'estat de consentiment. El patró que supera la revisió d'un regulador tracta cada mòdul de FullStory com una porta separada vinculada a un senyal específic de CMP.
- La reproducció de sessions i el flux DOM complet s'associen a una categoria dedicada de reproducció de sessions o recerca que és diferent de l'anàlisi genèrica. La guia de l'EDPB és explícita en aquest punt — el consentiment de reproducció ha de ser separat i granular, no agrupat amb anàlisi o màrqueting.
- La captura de xarxa es troba darrere d'una subporta més estricta dins de la mateixa categoria perquè captura cossos de resposta HTTP que poden contenir dades personals no relacionades amb la interfície visible. La captura de xarxa ha d'estar desactivada de manera predeterminada i activar-se només per a rutes d'aplicació específiques on l'operador hagi confirmat que els cossos de resposta no inclouen dades sensibles.
- La vinculació d'identitats via FS.identify() pot funcionar amb un identificador de sessió efímer sota una base d'interès legítim quan l'usuari és anònim, però vincular la identificació a un identificador persistent de primera part entre sessions requereix el mateix consentiment que la reproducció de sessions.
- Els mapes de calor i l'anàlisi de conversió derivats del flux de reproducció de sessions hereten la porta del flux superior — no són superfícies de consentiment separades, sinó productes derivats de les mateixes dades capturades.
El patró d'integració que funciona
La implementació de referència té quatre parts: un CMP que exposa un event de canvi de consentiment en temps real, un arrencada diferida que inicialitza FullStory amb la captura suprimida via FS.shutdown(), un oient de consentiment que invoca FS.consent(true) i FS.restart() quan s'obre la porta de reproducció de sessions, i una configuració d'emmascarament privada de manera predeterminada que suprimeix durament cada camp d'entrada tret que es pugui optar explícitament.
Emmascarament privat de manera predeterminada
La capa d'emmascarament de FullStory opera de manera independent al consentiment i s'ha de configurar de manera agressiva fins i tot quan s'ha concedit el consentiment. La classe CSS fs-mask en qualsevol element suprimeix el contingut d'aquest element de l'enregistrament; la classe CSS fs-exclude exclou l'element completament del flux DOM; la classe fs-block bloqueja tant el contingut com l'estructura. Sota les regles de categories especials del GDPR i la definició d'informació personal sensible de la CCPA, qualsevol camp que pugui capturar informació sanitària, detalls financers, identificadors governamentals, dades biomètriques, geolocalització precisa o contingut de comunicacions privades ha d'utilitzar els atributs d'emmascarament independentment de l'estat de consentiment de l'usuari. La postura recomanada és aplicar fs-mask al nivell del formulari en lloc del nivell del camp — un desenvolupador que afegeix un nou camp a un formulari existent és molt menys probable que recordi emmascarar-lo individualment que no pas operar dins d'un embolcall d'emmascarament a nivell de formulari que ho captura automàticament.
Selecció de la regió i residència de les dades
FullStory opera punts finals d'ingestió separats per als EUA i la UE. Per al trànsit de l'EEA i el Regne Unit, el punt final de la UE és el valor predeterminat correcte — manté la ingestió, el tractament i l'emmagatzematge dins de l'EEA i redueix l'exposició de Schrems II que portaria qualsevol implementació de reproducció de sessions de la regió dels EUA. El punt final es configura per a cada organització de FullStory i no es pot canviar de manera retroactiva, de manera que l'elecció de la regió s'ha de fer abans d'escalar i documentar a l'avís de privadesa perquè la cadena de base jurídica sigui neta des de la recollida fins a l'emmagatzematge.
Validació de la integració i el rastre d'auditoria
El pas de validació és el que comproven els reguladors i el que els editors solen ometre en les eines de reproducció de sessions. Una implementació de FullStory correctament integrada ha de superar quatre proves en seqüència. Primer, una sessió del navegador neta amb el bàner mostrat però sense cap elecció feta ha de produir zero sol·licituds a rs.fullstory.com més enllà de la descàrrega del fitxer SDK i zero galetes fs_ a document.cookie. Segon, rebutjar el consentiment de reproducció de sessions ha de mantenir aquest estat — sense captura, sense identificador, sense enregistrament. Tercer, acceptar el consentiment de reproducció de sessions ha de produir la galeta fs_uid esperada, un únic event FS.consent(true) i el flux DOM que flueix al punt final de la regió configurada, amb els camps emmascarats confirmats per capturar només el marcador de posició de la màscara. Quart, retirar el consentiment ha d'aturar immediatament la captura posterior, caducar les galetes fs_ i activar una sol·licitud de supressió a través del punt final de privadesa de FullStory per als enregistraments anteriors de l'usuari.
L'expectativa del rastre d'auditoria és on les eines de reproducció de sessions s'enfronten al control més estricte. Les directrius del bàner de galetes de l'EDPB de 2023 i les prioritats renovades del grup de treball de 2026 són explícites que l'editor ha de poder demostrar, per a qualsevol enregistrament de sessió específic al projecte de FullStory, que l'usuari que el va generar havia donat un consentiment vàlid de reproducció de sessions en el moment de la captura. El patró estàndard és establir la versió de consentiment i la marca de temps com a variables d'usuari a l'identificador de FullStory via FS.setUserVars({ consent_version: 'v3', consent_ts: ts }) perquè qualsevol enregistrament individual sigui traçable fins a una entrada de registre de consentiment específica. Una implementació correctament controlada, combinada amb atributs d'emmascarament que per defecte siguin privats i un camí de supressió que s'activi en la retirada, és el que converteix la cobertura de FullStory d'un risc de concentració regulatòria en una part defensable de la pila d'experiència digital d'un editor.