Passer au contenu principal
La déconnexion unique (SLO) est une fonctionnalité qui permet à un utilisateur de mettre fin à plusieurs sessions d’authentification en effectuant une seule action de déconnexion. Auth0 prend en charge le SLO lorsque vous connectez votre application à un fournisseur d’identité SAML (IdP) et offre une prise en charge limitée du SLO lorsque vous configurez Auth0 comme fournisseur d’identité SAML.

Configurer le SLO lorsque l’application est connectée à un IdP SAML

Si vous voulez qu’Auth0 déconnecte un utilisateur de son fournisseur d’identité, incluez le paramètre federated lorsque vous appelez le point de terminaison Logout de l’Authentication API d’Auth0. Vous devrez peut-être configurer des paramètres supplémentaires pour la connexion afin qu’Auth0 envoie la demande de déconnexion au point de terminaison de déconnexion du SAML :
  1. Accédez à Auth0 Dashboard > Authentication > Enterprise > SAML et sélectionnez votre connexion.
  2. Activez Enable Sign Out.
  3. Saisissez l’URL de déconnexion SAML fournie par le IdP SAML dans le champ Sign Out URL. Si vous laissez ce champ vide, Auth0 utilisera par défaut l’URL du champ Sign In URL.
  4. Confirmez que la valeur du champ Protocol Binding correspond à la liaison de protocole attendue par le IdP SAML.

Configurer le SLO lorsque Auth0 agit comme IdP SAML

Lorsque Auth0 agit comme IdP SAML, il y a deux scénarios de déconnexion à considérer :
  • Déconnexion initiée par l’application
  • Déconnexion initiée par l’IdP
Dans les deux cas, vous devez configurer le module complémentaire SAML2 Web App afin d’indiquer où envoyer les réponses de déconnexion :
  1. Accédez à Auth0 Dashboard > Applications > Applications et sélectionnez votre application.
  2. Ouvrez l’onglet Addons et sélectionnez SAML2 Web App.
  3. Accédez à l’onglet Settings.
  4. Repérez la zone Settings et ajoutez (ou mettez à jour) l’objet logout avec les propriétés suivantes :
    • callback : Entrez l’URL SLO de l’application.
    • slo_enabled : Entrez true si vous souhaitez activer le SLO initié par l’IdP, dans lequel Auth0 envoie une requête de déconnexion SAML à l’application lorsque l’utilisateur se déconnecte de l’IdP SAML Auth0. Sinon, entrez false.
      cURL
      {
        "logout": {
          "callback": "https://myapp.exampleco.com/saml/logout",
          "slo_enabled": true
        }
      }
      
Par défaut, Auth0 envoie les réponses de déconnexion SAML à l’aide de la liaison de protocole HTTP-POST. Si votre application attend la liaison de protocole HTTP-Redirect, ajoutez (ou mettez à jour) la propriété binding comme suit :
JSON
{
  "binding": "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
}

Déconnexion initiée par l’application

Lorsque l’utilisateur lance la déconnexion depuis une application, celle-ci doit envoyer une requête au point de terminaison de déconnexion SAML de l’Authentication API pour déclencher le SLO. Si votre application ne prend pas en charge le SLO, mais qu’elle prend en charge une URL de redirection vers laquelle envoyer l’utilisateur après la déconnexion, définissez l’URL de redirection sur le point de terminaison de déconnexion OIDC de l’Authentication API (ou sur le point de terminaison de déconnexion Auth0 de l’Authentication API si vous utilisez l’ancienne méthode de déconnexion). Auth0 n’informera pas les autres participants à la session qu’une déconnexion a été lancée, mais nous supprimerons la session Auth0 de l’utilisateur.

Déconnexion initiée par l’IdP

Lorsqu’un utilisateur déclenche la déconnexion depuis un IdP SAML Auth0, Auth0 envoie une réponse de déconnexion SAML à l’URL définie dans la propriété logout.callback, dans les paramètres du module complémentaire SAML2 Web App. Vous ne pouvez spécifier qu’une seule URL pour cette propriété. En raison de cette contrainte, Auth0 ne prend pas en charge nativement le cas où un utilisateur doit être déconnecté de plusieurs applications connectées à votre IdP SAML Auth0. Vous pouvez obtenir un comportement semblable au SLO en configurant vos applications pour qu’elles vérifient régulièrement l’état de la session Auth0 de l’utilisateur et mettent fin à la session de l’application en conséquence. Pour en savoir plus, consultez Limites de durée de vie des sessions.

En savoir plus