Passer au contenu principal
Auth0 prend en charge les intégrations de déconnexion universelle avec Okta Workforce Identity, qui permettent de déconnecter les utilisateurs des applications lorsqu’un événement administratif ou de sécurité survient. La déconnexion universelle met en œuvre la spécification Global Token Revocation, qui va au-delà des normes établies de déconnexion en canal arrière d’ Connect en révoquant les , en plus des sessions utilisateur. Cette solution de déconnexion complète s’applique aux applications Web traditionnelles, aux applications monopage (SPA) et aux applications natives qui utilisent à la fois des jetons d’actualisation, des sessions d’application et des sessions de pour obtenir de nouveaux jetons et garder l’utilisateur connecté. Si vous utilisez les types de connexion Okta, SAML ou OpenID Connect pour fédérer avec Workforce Identity, vous n’avez plus besoin de créer un point de terminaison de révocation globale des jetons pour utiliser Okta Universal Logout. Vous pouvez plutôt fournir à l’administrateur Okta Workforce l’URL du point de terminaison propre à la connexion d’Auth0 et tirer parti de la déconnexion en canal arrière OpenID Connect d’Auth0 pour mettre fin aux sessions d’application au besoin.

Fonctionnement

Le point de terminaison de révocation globale des jetons d’Auth0 suit le profil décrit dans Build Logout for your app. Il utilise le format iss_sub pour identifier les utilisateurs dans la demande de déconnexion et le format d’URL suivant : https://{yourDomain}/oauth/global-token-revocation/connection/{yourConnectionName} Lorsqu’Auth0 reçoit une demande de déconnexion pour un utilisateur, il la valide à l’aide du même jeu de clés que celui utilisé pour valider les ou les assertions émises par Okta Workforce Identity. Il met ensuite fin à toutes les sessions Auth0 de l’utilisateur, révoque les jetons d’actualisation émis par Auth0 et, s’il est configuré, déclenche le Back-Channel Logout OpenID Connect afin de révoquer les sessions d’application.
Flux utilisateur avec Universal Logout
Le délai avant qu’un utilisateur d’une application perde l’accès dépend du type d’application et de la façon dont elle est intégrée à Auth0. Auth0 prend en charge un vaste éventail d’architectures d’application grâce à la prise en charge des normes d’identité OIDC et , ainsi qu’aux Quickstarts et SDK d’Auth0. Cela comprend :
  • Les applications Web traditionnelles qui créent leurs propres sessions d’application peuvent utiliser des jetons d’actualisation et des pour accéder aux API au moyen d’un backend sécurisé.
  • Les applications JavaScript exécutées dans le navigateur qui tirent parti de la couche de session Auth0 ou utilisent des techniques comme la rotation des jetons d’actualisation pour obtenir les jetons d’accès nécessaires afin d’accéder aux API depuis un navigateur Web.
  • Les applications natives ou mobiles qui ne s’exécutent pas dans un navigateur Web et qui utilisent les jetons d’actualisation et les jetons d’accès comme principal moyen de garder les utilisateurs connectés.

Révoquer les jetons d’actualisation et les sessions des utilisateurs Auth0

Les applications qui utilisent des jetons d’actualisation ou des sessions Auth0 bénéficient des avantages de sécurité suivants lorsque l’intégration Universal Logout est activée :
  • Pour les applications basées sur un navigateur qui utilisent la session Auth0, l’utilisateur perd l’accès la prochaine fois que l’application vérifie la session Auth0, et Auth0 lui demande de se reconnecter lors de la redirection
  • Pour les applications qui utilisent des jetons d’actualisation, l’utilisateur perd l’accès dès que son jeton d’accès actuel expire, ce délai pouvant aller de quelques secondes jusqu’à la durée de vie maximale du jeton d’accès configurée dans Auth0.

Révoquer les sessions utilisateur de l’application

Pour les sessions créées par des applications Web, vous devriez utiliser la fonctionnalité OpenID Connect Back-Channel Logout existante d’Auth0 pour mettre fin à ces sessions lorsque Universal Logout met fin à la session utilisateur Auth0. Pour en savoir plus, consultez les exemples d’implémentation des SDK Auth0.

Configurer la déconnexion universelle dans Auth0

Configurez la déconnexion universelle en fonction du type de connexion Auth0.

Okta Workforce

  1. Connectez votre locataire Auth0 à Okta Workforce Identity.
  2. Dans Auth0 Dashboard, accédez à Authentication > Enterprise > Okta Workforce. Sélectionnez votre connexion, puis choisissez Settings.
  3. Copiez le Revocation Endpoint URL que vous fournirez à l’administrateur d’Okta Workforce.

OpenID Connect

Nous recommandons fortement d’utiliser le type de connexion Okta Workforce pour les nouvelles intégrations OpenID Connect. Toutefois, Universal Logout peut toujours être activée pour les anciennes intégrations au moyen du type de connexion OpenID Connect générique dans les Settings d’OpenID Connect d’Auth0 Dashboard.
  1. Dans Auth0 Dashboard, accédez à Authentication > Enterprise > OpenID Connect. Sélectionnez votre connexion, puis choisissez Settings.
  2. Copiez l’Revocation Endpoint URL que vous fournirez à l’administrateur Okta Workforce.

SAML

  1. Configurer Okta comme fournisseur d’identité SAML.
  2. Dans Auth0 Dashboard, accédez à Authentication > Enterprise > SAML. Sélectionnez votre connexion, puis cliquez sur Settings.
  3. Pour Subject, saisissez l’ID de l’application SAML enregistrée dans Okta Workforce Identity. Exemple : 0oagcc12354688xxxx. Pour en savoir plus, consultez How to Obtain an Application ID.
  4. Pour Issuer, accédez à l’application SAML enregistrée dans l’organisation Okta Workforce Identity et copiez l’URI de l’émetteur.
    Pour récupérer cette valeur, les administrateurs WIC peuvent accéder à la section Applications > Applications > [Application] > Authentication > Sign-on settings > Sign-on methods > SAML 2.0 > More details du portail Okta.
  5. Copiez l’URL du Revocation Endpoint, que vous transmettrez à l’administrateur Okta Workforce.

Configurer la déconnexion universelle dans Okta Workforce Identity

Configurez la déconnexion universelle dans Okta Workforce Identity afin d’envoyer des signaux de déconnexion à l’application par l’intermédiaire de la connexion Auth0. Cette opération doit être effectuée par un administrateur Okta.

Prérequis

Vous devez disposer de :

Configurer Okta

Activez Universal Logout dans une organisation Workforce d’Okta pour la connexion Auth0.
  1. Dans le portail Okta, sélectionnez Applications > Applications.
  2. Sélectionnez l’application que vous avez enregistrée pour l’intégration à Auth0.
  3. Dans l’onglet General, sélectionnez Logout > Edit.
    Image du tableau de bord Okta pour la configuration de Universal Logout
  4. Choisissez Okta system or admin initiates logout.
  5. Entrez l’URL copiée depuis Auth0 dans Logout Endpoint URL.
  6. Sélectionnez Issuer and Subject Identifier comme Subject Format.
  7. Sélectionnez Save.

Tester la déconnexion universelle

Testez la déconnexion universelle dans Okta Workforce Identity en révoquant les sessions d’un utilisateur sélectionné.
  1. Dans le portail Okta, sélectionnez Directory > People.
  2. Sélectionnez un utilisateur connecté à une application Auth0.
  3. Sélectionnez More Actions > Clear User Sessions.
    Tester la déconnexion universelle dans le tableau de bord Okta
  4. Dans la boîte de dialogue, sélectionnez Also include logout enabled apps and Okta API tokens.
  5. Sélectionnez Clear and Revoke.

Journaux et notifications

Les administrateurs du locataire Auth0 peuvent consulter l’état et les détails de chaque requête de déconnexion universelle reçue par Auth0 dans Auth0 Dashboard > Monitoring > Logs. Les types d’événements de journal générés pour la déconnexion universelle sont documentés dans Codes des types d’événements de journal. Vous pouvez également intégrer Custom Log Streams pour aviser des systèmes externes lorsque des événements de déconnexion universelle se produisent.

Management API

Vous pouvez aussi utiliser la Management API pour configurer Universal Logout par programmation. Cela peut être utile pour automatiser la configuration ou mettre en place votre propre configuration en dehors de l’. Pour Okta Workforce et les connexions OpenID, aucune configuration dans la n’est requise, car seul le point de terminaison global de révocation de jetons d’Auth0 doit être communiqué à l’administrateur Okta Workforce. Pour les connexions SAML, en plus de partager l’URL du point de terminaison, Universal Logout doit être configuré en définissant ces attributs sur l’objet connection :
  • options.global_token_revocation_jwt_iss - L’ID de l’émetteur de l’application SAML enregistrée dans Okta Workforce Identity. Valeur d’exemple : http://www.okta.com/exkhwkmkwhZUnuA6xxxx.
  • options.global_token_revocation_jwt_sub - L’ID de l’application de l’application SAML enregistrée dans Okta Workforce Identity. Valeur d’exemple : 0oagcc12354688xxxx.
Vous pouvez utiliser ces attributs dans des appels à la Management API pour mettre à jour ou créer des connexions SAML. Consultez l’exemple JSON suivant pour créer une requête :
JSON
{
	"strategy": "samlp",
  	"name": "CONNECTION_NAME",
  	"options": {
    	"global_token_revocation_jwt_iss": "ISS_VALUE", 
     	"global_token_revocation_jwt_sub":  "SUB_VALUE",
    	"signInEndpoint": "SIGN_IN_ENDPOINT_URL",
    	"signOutEndpoint": "SIGN_OUT_ENDPOINT_URL",
    	"signatureAlgorithm": "rsa-sha256",
    	"digestAlgorithm": "sha256",
    	"fieldsMap": {
     		...
    	},
    	"signingCert": "BASE64_SIGNING_CERT"
  	}
}
Pour en savoir plus, consultez Créer une connexion d’entreprise à l’aide de la Management API.