ITP et comportement du navigateur
L’activation de l’ITP fait que le navigateur se comporte comme si vous aviez désactivé les témoins tiers dans le navigateur, ce qui rend impossible l’obtention d’un nouveau jeton sans afficher quoi que ce soit à l’utilisateur. Cela s’apparente à la manière dont Connect (OIDC) utilise les iframes pour gérer les sessions dans les applications à page unique. Dans la trousse SDK SPA (ce qui est notre recommandation),getTokenSilently
effectue une authentification silencieuse à moins que vous ne configuriez la trousse SDK pour qu’il utilise des jetons d’actualisation rotatifs.
Solutions de contournement
Les progrès récents en matière de contrôle de la vie privée dans les navigateurs ont un impact négatif sur l’expérience de l’utilisateur en empêchant l’accès aux témoins de tierces parties. Vous pouvez utiliser la rotation des jetons d’actualisation comme une alternative qui fournit une méthode sécurisée pour l’utilisation de jetons d’actualisation dans les SPA tout en offrant aux utilisateurs finaux un accès transparent aux ressources sans la perturbation de l’expérience utilisateur causée par les technologies de confidentialité telle l’ITP. Vous pouvez également contourner les problèmes posés par l’ITP en utilisant la fonctionnalité d’Auth0 domaines personnalisés en particulier si le domaine personnalisé se trouve dans un sous-domaine du domaine du site web de l’application. Par exemple, si votre application est hébergée sur example.com, le domaine personnalisé doit avoir le format subdomain.example.com.Mode de débogage ITP
Safari Technology Preview propose un « Mode de débogage de la prévention du suivi intelligent » que vous pouvez utiliser pour résoudre les problèmes liés à la prévention du suivi intelligent. Vous trouverez des instructions sur la manière de déboguer l’ITP dans cet article de blogue de WebKit. REMARQUE : Les instructions indiquent comment classer de manière permanente un domaine personnalisé comme ayant des capacités de suivi à des fins de test. Cependant, dans les versions ultérieures de Safari Technology Preview, le domaine dans lequel sont stockées les valeurs par défaut de l’utilisateur pour ce paramètre est passé decom.apple.SafariTechnologyPreview
à com.apple.WebKit.Networking
. Si vous rencontrez des difficultés avec les commandes mentionnées dans les instructions, essayez celles-ci :
- Classer un site comme ayant des capacités de suivi :
defaults write com.apple.WebKit.Networking ResourceLoadStatisticsManualPrevalentResource example.com
- Vérifier le paramètre :
defaults read com.apple.WebKit.Networking ResourceLoadStatisticsManualPrevalentResource
- Supprimer le paramètre :
defaults delete com.apple.WebKit.Networking ResourceLoadStatisticsManualPrevalentResource