Vie privée et consentement
Les données d'identité
Par défaut, le SDK reste en attente et ne crée aucun identifiant. Après consentement, il crée un anonymous_id dans localStorage et un session_id dans sessionStorage. Ces identifiants sont propres au projet. Après connexion, identify() peut leur associer un identifiant métier fourni par votre application.
Sarutobi ne lit pas automatiquement l'email, le nom, les formulaires ou le contenu de la page. Les propriétés de personne sont exclusivement celles que votre instrumentation transmet explicitement.
Choisir la persistance
sarutobi.init({
projectToken: "st_live_...",
persistence: "localStorage", // "memory" ou "none"
consent: "pending", // aucun envoi avant accord
});localStoragereconnaît l'identité anonyme entre plusieurs visites ;memorylimite l'identité à l'instance courante du SDK ;nonene persiste rien dans le navigateur, mais génère une identité éphémère pour le batch ;consent: "pending"ne crée aucun identifiant et n'envoie aucun événement.
Brancher un gestionnaire de consentement
// Après le choix de l'utilisateur
sarutobi.setConsent("granted");
// Retrait du consentement
sarutobi.setConsent("denied"); // arrête la collecte et efface l'identité localeLes méthodes historiques optOut() et optIn() restent disponibles. Elles correspondent respectivement à un refus et à un accord.
Connexion et déconnexion
// Après authentification
sarutobi.identify(user.id, { plan: user.plan });
// À la déconnexion ou lors d'un changement de compte
sarutobi.reset();reset()renouvelle l'identité anonyme et la session afin d'éviter que deux personnes utilisant le même navigateur soient mélangées.
Données à ne jamais envoyer
- mots de passe, secrets, tokens et clés d'API ;
- données bancaires ou de santé sans dispositif spécifique validé ;
- contenu libre de formulaires ;
- URL ou propriétés contenant des données personnelles non nécessaires.
Adresse IP et données techniques
L'ingestion actuelle utilise encore l'adresse IP et le user-agent pour alimenter les agrégats historiques, sans conserver l'IP brute. En parallèle, le nouveau modèle écrit person_id, anonymous_id et session_id. Cette double écriture sera retirée lorsque les écrans historiques auront migré.
