Passer au contenu principal
Le terme « implicite » ne doit pas vous induire en erreur! Bien que OAuth décourage désormais l’utilisation de l’octroi implicite pour l’obtention de jetons d’accès dans les SPA, le scénario traité par Flux implicite avec Form Post est complètement différent et n’est pas affecté par les problèmes de sécurité qui ont conduit à cette mise en garde concernant les SPA. Plus précisément, le Flux implicite avec Form Post s’applique aux applications web traditionnelles contrairement aux SPA. Vous obtenez des jetons d’ID par opposition aux jetons d’accès, dont l’utilisation prévue est totalement différente. Le flux utilise POST par opposition au placement de jetons dans des fragments d’URL (comme avec les SPA) qui peuvent exposer les parties du jeton aux attaques de l’historique du navigateur, aux en-têtes de redirection, etc.
Vous pouvez utiliser Connect (OIDC) avec de nombreux flux différents pour réaliser une connexion web pour une application web traditionnelle. Dans un flux classique, vous obtenez un jeton d’ID à l’aide d’un flux de code d’autorisation exécuté par le programme dorsal de l’application. Cette méthode est efficace et robuste, mais elle exige que votre application web obtienne et gère un secret. Vous pouvez éviter cette charge si tout ce que vous voulez faire est implémenter l’ouverture de session et que vous n’avez pas besoin d’obtenir des jetons d’accès pour invoquer les API. Le Flux implicite avec Form Post utilise OIDC pour implémenter l’ouverture de session sur le web, qui est très similaire au fonctionnement de et de WS-Federation. L’application web demande et obtient des jetons par l’intermédiaire du canal frontal, sans avoir besoin de secrets ou d’appels supplémentaires au système dorsal. Avec cette méthode, vous n’avez pas besoin d’obtenir, de maintenir, d’utiliser et de protéger un secret dans votre application.

Fonctionnement

Vous devez utiliser ce flux pour les cas d’utilisation de connexion uniquement. Si vous devez demander des jetons d’accès tout en connectant l’utilisateur pour pouvoir appeler une API, utilisez le Flux de code d’autorisation avec PKCE ou le Flux hybride.
Flux - Implicite avec Formulaire Post - Schéma de la séquence d’Authorization (Autorisation)
  1. L’utilisateur clique sur Connexion dans l’application.
  2. La trousse SDK Auth0 redirige l’utilisateur vers le serveur d’autorisation Auth0 (point de terminaison /authorize) en passant un paramètre response_type de id_token qui indique le type d’identifiant demandé. Elle passe également le paramètre response_mode de form_post pour garantir la sécurité.
  3. Votre serveur d’autorisations Auth0 redirige l’utilisateur vers l’invite de connexion et d’autorisation.
  4. L’utilisateur s’authentifie en utilisant l’une des options de connexion configurées et peut voir une page de consentement énumérant les autorisations qu’Auth0 accordera à l’application.
  5. Votre serveur d’autorisations Auth0 redirige l’utilisateur vers l’application avec un jeton d’ID.

Comment la mettre en œuvre?

Vous pouvez utiliser notre trousse SDK Express OpenID Connect pour mettre en œuvre en toute sécurité le flux implicite avec Form Post. Enfin, vous pouvez suivre nos tutoriels pour utiliser les points de terminaison API : Ajouter la connexion à l’aide du flux implicite avec Form Post.

En savoir plus

I