Flux hybride
Les applications capables de stocker en toute sécurité les identifiants client peuvent bénéficier de l’utilisation du flux hybride (défini dans la spécification OpenID Connect, section 3.3). Le flux hybride permet à votre application d’avoir un accès immédiat à un jeton d’ID tout en garantissant une récupération en toute sécurité des jetons d’accès et des jetons d’actualisation. Cela peut s’avérer utile lorsque votre application doit accéder immédiatement à des informations sur l’utilisateur, mais doit effectuer un traitement avant d’accéder à des ressources protégées pendant une période prolongée.
Fonctionnement
Le flux hybride combine des étapes du Flux implicite avec Form Post et le flux de code d’autorisation :
L’utilisateur sélectionne Connexion dans l’application.
L’application redirige l’utilisateur vers le serveur d’autorisation Auth0 (
point de terminaison
/authorize), en transmettant le paramètreresponse_type
indiquant le type d’identifiants demandé (Jeton d’ID et code d’autorisation), ainsi que le paramètreresponse_mode
de typeform_post
pour assurer la sécurité.Le serveur d’autorisations Auth0 redirige l’utilisateur vers l’invite de connexion et d’autorisation.
L’utilisateur s’authentifie en choisissant l’une des options de connexion configurées et peut voir apparaître une invite de consentement énumérant les autorisations qu’Auth0 accordera à l’application.
Le serveur d’autorisation Auth0 redirige l’utilisateur vers l’application avec un code d’autorisation à usage unique, et un jeton d’ID, un jeton d’accès, ou les deux, en fonction du
response_type
(type de réponse) fourni.L’application envoie le code d’autorisation, l’ID client de l’application et les identifiants de l’application, comme le secret client ou la clé privée JWT, au serveur d’autorisations Auth0 (point de terminaison
/oauth/token
).Le serveur d’autorisations Auth0 vérifie le code d’autorisation, l’ID client de l’application et les identifiants de l’application.
Le serveur d’autorisations Auth0 répond avec un deuxième jeton d’ID et un jeton d’accès (et éventuellement un jeton d’actualisation).
L’application peut utiliser le deuxième jeton d’accès pour appeler une API afin d’accéder aux informations relatives à l’utilisateur.
L’API répond avec les données demandées.
Comment la mettre en œuvre?
Vous pouvez suivre notre tutoriel sur l’utilisation de l’Authentication API afin d’appeler votre API en utilisant le flux hybride.