Le partitionnement du stockage local sur différents sous-domaines n’affecte pas les données collectées pour l’analyse. Cette option n’est nécessaire que pour les campagnes couvrant plusieurs sous-domaines ou utilisant des données stockées localement sur différents sous-domaines.
visitorCode à partir du cookie kameleoonVisitorCode (défini par le serveur). Kameleoon vérifie ensuite si le visitorCode actuel dans LocalStorage est vide. S’il est vide, Kameleoon effectue un SSC pour récupérer toutes les données présentes dans LocalStorage depuis les serveurs backend de Kameleoon. Une fois cet appel terminé, Kameleoon restaure les données à leur état précédent.
Kameleoon active cette option par défaut sur le navigateur Safari.
Tag de suivi des données de session unifiées
Pour activer les données de session unifiées dans Kameleoon, hébergez un fichier<iframe> (fourni ci-dessous) sur le domaine principal (de premier niveau) de votre site web. Cet iframe se charge chaque fois qu’un visiteur navigue vers une page dont l’URL ne correspond pas au domaine principal du site web. Le fichier HTML de l’iframe est petit, statique et ne contient que du code immuable utilisé pour sauvegarder et restaurer les données du visiteur dans Local Storage.
L’activation du suivi cross-domain dans l’application Kameleoon ne nécessite pas que le fichier iframe soit disponible immédiatement. Kameleoon continue de collecter des données et d’exécuter des campagnes sur chaque sous-domaine pendant que vous terminez d’héberger et d’installer le fichier. Tant que cette configuration n’est pas terminée, les visites ne sont pas unifiées : Kameleoon considère chaque sous-domaine comme une nouvelle visite et réinitialise des données telles que les pages vues, ce qui peut produire des résultats inattendus pour le ciblage qui dépend de ces données.
Kameleoon recommande de télécharger directement le fichier modèle d’iframe (cliquez avec le bouton droit sur le lien et sélectionnez Enregistrer le lien sous…) et d’héberger votre propre copie, car Kameleoon met à jour ce modèle au fil du temps.
- La valeur de la variable
siteCodeavec votre propre site code de projet. - La valeur de la variable
allowedDomains. Définir cette variable pour n’autoriser que vos domaines supprime une vulnérabilité potentielle en matière de sécurité et de fuite de données.
kameleoonIframeURL. Définissez cette variable sur l’URL où l’iframe est accessible sur votre site web.
Hébergez le fichier de l’iframe sur vos serveurs dans le domaine principal du site web. Pour plusieurs sous-domaines, choisissez le plus important. Cette étape est obligatoire pour les équipes techniques. Kameleoon utilise toujours le domaine principal pour stocker le contenu dans le Local Storage du navigateur. Si l’URL actuelle correspond au domaine principal, le moteur Kameleoon peut écrire directement les données dans l’espace Local Storage associé. Si l’URL appartient à un autre domaine, Kameleoon charge le fichier de l’iframe, qui contient du code statique permettant uniquement de lire et d’écrire des données Kameleoon sur le domaine principal.
Vous pouvez utiliser le snippet de données de session unifiées dans une installation Tag Manager.
Tag unifié avec anti-flicker
Si vous utilisez le tag unifié et le tag asynchrone avec anti-flicker, vous devez ajouter les trois balises de script dans l’ordre suivant :- Tag asynchrone avec anti-flicker.
- Script de données de session unifiées.
- Tag d’installation Kameleoon.
Vérifier votre configuration
Une fois l’iframe hébergé et installé, vérifiez que Kameleoon unifie correctement les données de session entre vos sous-domaines.- Accédez à l’un de vos sous-domaines.
- Ouvrez l’onglet Network et vérifiez que la requête pour votre fichier iframe renvoie un statut 200, puis vérifiez dans la console du navigateur l’absence d’erreurs
X-Frame-Optionsou de Content Security Policy qui la bloqueraient. - Ouvrez les outils de développement de votre navigateur et vérifiez le Local Storage du sous-domaine actuel. Aucune entrée liée à Kameleoon, comme
kameleoonData, n’y apparaît. - Passez à l’entrée du domaine principal dans le panneau Local Storage. Des entrées liées à Kameleoon, comme
kameleoonData, y apparaissent à la place, ce qui confirme que Kameleoon stocke les données de session unifiées du visiteur sur le domaine principal.
Vulnérabilité des données de session unifiées
Lorsque vous utilisez une configuration avec des données de session unifiées, un problème de sécurité potentiel peut survenir. Comme Kameleoon écrit toutes les données du visiteur dans le stockage local appartenant à un domaine externe, un site web malveillant pourrait potentiellement lire ces données en incluant votre iframe dans sa page. Une fois chargé, l’iframe renverrait toujours les données Kameleoon via un appelpostMessage(). La réponse pourrait inclure des données personnalisées contenant des informations confidentielles ou sensibles.
Cette exploitation n’affecte que les visiteurs qui visitent d’abord votre site web puis le site malveillant. Par conséquent, un attaquant ne peut pas obtenir les données de tous vos visiteurs. Pour renforcer la sécurité, restreignez l’accès à l’iframe à une liste spécifiée de domaines et sous-domaines. Fournissez cette liste dans la variable allowedDomains à l’intérieur du fichier iFrame statique.
- Restriction de l’accès aux domaines identifiés : Le code de l’iframe inclut une variable allowedDomains qui spécifie les domaines autorisés à demander l’iframe. Seuls les domaines listés peuvent charger et exécuter du code depuis l’iframe Kameleoon.
- Restriction de l’accès aux site codes identifiés : Le code de l’iframe inclut une variable siteCode qui garantit que seul un moteur Kameleoon avec le site code spécifié peut demander l’iframe.
- Local Storage préfixé : L’iframe et Kameleoon ne lisent et n’écrivent que des entrées qui commencent par le préfixe “kameleoon”. Kameleoon ne peut lire ou écrire aucune autre donnée, ce qui ajoute une couche de sécurité supplémentaire.
Pour activer les données de session unifiées, l’iframe Kameleoon doit se charger sur tous vos domaines. Ne définissez pas d’en-tête de réponse
X-Frame-Options.Kameleoon héberge les projets sur soit
kameleoon.eu soit kameleoon.io selon leur date de création. Utilisez le domaine affiché dans l’application Kameleoon pour votre projet.