Meilleure pratique
Votre comportement de déconnexion doit indiquer clairement à l’utilisateur quelle(s) session(s) est (sont) interrompue(s) et, idéalement, afficher une confirmation visuelle de la déconnexion par la suite. Lors de la configuration du comportement de déconnexion, vous devrez tenir compte des éléments suivants :- Quelles sessions doivent être terminées lorsque l’utilisateur se déconnecte?
- Quelles informations devez-vous fournir aux utilisateurs pour confirmer la fin des sessions?
- Où les utilisateurs doivent-ils être redirigés après la fin de la déconnexion?
- Combien de temps voulez-vous que les sessions durent si les utilisateurs ne déclenchent pas le processus de déconnexion?
- L’utilisateur final doit-il être déconnecté de toutes ses sessions d’application lorsqu’il se déconnecte d’une seule?
- La session avec le fournisseur d’identité d’une organisation doit-elle aussi être interrompue lors de la déconnexion?
Si la fonction de déconnexion d’une application met fin à une session SSO (authentification unique) d’Auth0 utilisée par d’autres applications, l’utilisateur peut perdre du travail si des transactions n’ont pas été validées. Assurez-vous d’ajouter la fonctionnalité nécessaire pour gérer de telles conditions afin de minimiser la probabilité d’une perte de travail.
Où envoyer les utilisateurs après la déconnexion
Une fois que votre utilisateur se déconnecte, il sera redirigé vers un emplacement spécifique de votre choix. Cet emplacement est spécifié en tant que URL de redirection de déconnexion, et vous pouvez le définir en tant que paramètre via le . Les URL que vous utilisez pour rediriger les utilisateurs après la déconnexion doivent être mises sur la liste blanche dans le Dashboard afin d’atténuer les vulnérabilités de sécurité des redirections ouvertes. Vous pouvez les mettre sur la liste blanche au niveau du locataire ou de l’application.Si l’utilisateur se déconnecte et que vous le redirigez vers l’application, et que l’application le redirige vers un fournisseur d’identités où il a toujours une session valide, il sera connecté silencieusement à l’application. L’utilisateur peut avoir l’impression que le processus de déconnexion n’a pas fonctionné correctement.
Fin automatique des sessions
Il n’est pas courant que tous les utilisateurs enclenchent le processus de déconnexion manuellement, donc Auth0 fournit également un session timeout (délai d’expiration de session) pour éviter des sessions excessivement longues. Ce paramètre est disponible et paramétrable via le Auth0 Dashboard.Déconnexion unique
Si vous utilisez la Déconnexion fédérée vous voudrez surement également faire la Déconnexion unique (SLO), et deux principales approches existent pour y parvenir.La déconnexion unique (SLO) peut augmenter la complexité de votre système. Assurez-vous donc que cette fonctionnalité est vraiment nécessaire avant de consacrer du temps supplémentaire au développement et à la maintenance de votre système.
Jetons de courte durée
Meilleures pratiques vous devez éviter de faire trop d’appels à votre locataire Auth0 afin d’éviter des limites anti-attaques et de mauvaises performances. La meilleure pratique consiste à ne demander de nouveaux jetons que si les jetons ont expiré et que l’utilisateur entreprend une action. Cela évitera aux applications qui sont simplement ouvertes, mais pas utilisées, de demander continuellement de nouveaux jetons.
C’est de loin l’approche la plus simple pour une déconnexion unique. Chaque application impose un court délai pendant lequel un utilisateur peut utiliser le système, disons de 5 à 10 minutes. À chaque action effectuée par un utilisateur, si le délai est expiré, une redirection vers Auth0 (pour les applications Web régulières), ou authentification silencieuse pour les applications à page unique côté client, sera utilisée pour obtenir de nouveaux jetons. Habituellement, les nouveaux jetons seront émis silencieusement en raison de la session d’authentification unique (). Cependant, après la déconnexion, toutes les applications ne parviendront pas à obtenir de nouveaux jetons silencieusement, car la session d’authentification unique aura été supprimée et l’utilisateur devra ressaisir ses informations d’identification.Si vous transférez automatiquement l’utilisateur directement vers son propre IdP dans le cadre d’une connexion d’entreprise à l’aide du paramètre de connexion, vous risquez de ne pas pouvoir utiliser cette technique, à moins que vous ne procédiez également à une Déconnexion fédérée