Auth0\SDK\API\Authentication qui regroupe les méthodes permettant d’accéder directement à l’Authentication API. Veuillez noter que cette interface est destinée aux applications plus avancées et que, de façon générale, elle ne permet pas d’assurer le suivi des sessions utilisateur. Pour la plupart des cas d’utilisation, vous utiliserez plutôt la classe de base Auth0.
Dans cet article, vous trouverez des exemples d’opérations d’authentification courantes.
Prérequis
/authorize du domaine de votre tenant. Le code suivant apparaîtrait sur une page qui nécessite une authentification :
- Nous vérifions si un état d’utilisateur authentifié est stocké dans notre gestionnaire de session personnalisé. Votre application peut gérer les sessions utilisateur différemment.
- S’il n’y a pas de session, nous devons connecter l’utilisateur en le redirigeant vers la Universal Login Page.
- Nous définissons une valeur
stateavec la requête de connexion, puis nous vérifions cette valeur lorsque le code est renvoyé à l’URL de callback. Nous la stockons dans notre session PHP sous la clé ‘state’. - L’appel
getLoginLink()construit le bon lien/authorizeavec le bon type de réponse (codedans ce cas), l’URI de redirection (dans l’application, là où nous traiterons la réponse, comme expliqué ci-dessous) etstate(ci-dessus). - Nous redirigeons ensuite l’utilisateur vers cette URL et attendons qu’il soit redirigé vers nous.
- Nous recherchons un paramètre
codedans la chaîne de requête. S’il est absent, nous interrompons l’authentification. - Nous vérifions que nous avons une valeur
stateet nous nous assurons qu’elle correspond bien à celle que nous avons générée. C’est important pour éviter les attaques CSRF. - Nous tentons un échange de code avec l’appel
codeExchange(), en veillant à transmettre lecodequ’Auth0 a donné à notre application lorsqu’il nous a renvoyé l’utilisateur en cours d’authentification. - Si cela réussit, nous savons que l’échange a réussi et que nous avons un ID Token et un jeton d’accès, entre autres valeurs possibles.
- Nous validons l’ID Token et utilisons les claims pour l’identité de l’utilisateur.
- Si cette dernière étape réussit, nous stockons l’utilisateur et le redirigeons vers nos données sensibles.
Flux Client Credentials
AUTH0_MANAGEMENT_AUDIENCE dans votre fichier .env.
Demandez un jeton d’accès pour l’API à l’aide de l’exemple ci-dessous :
Déconnexion de l’authentification unique
session_destroy() suffit pour déconnecter un utilisateur de votre application, vous devriez aussi fermer la session Auth0 de votre utilisateur final. Ainsi, la prochaine fois que l’utilisateur verra un formulaire de connexion Auth0, il devra fournir ses identifiants pour se connecter.
Déterminez d’abord vers où l’utilisateur doit être redirigé une fois la déconnexion terminée. Enregistrez cette valeur dans les paramètres de l’application Auth0, dans le champ “URL de déconnexion autorisées”. Ajoutez également une clé AUTH0_LOGOUT_RETURN_URL ayant cette URL comme valeur dans votre fichier .env.
Ajoutez ce qui suit au code de déconnexion de votre application :