Skip to main content
L’Authentication API vous permet de gérer tous les aspects de l’identité utilisateur lorsque vous utilisez Auth0. Elle offre des points de terminaison pour que vos utilisateurs puissent se connecter, s’inscrire, se déconnecter, accéder aux API et plus encore. L’API prend en charge divers protocoles d’identité, comme OpenID Connect, OAuth 2.0, FAPI et SAML.
Cette API est conçue pour les personnes à l’aise avec l’intégration d’API REST. Si vous préférez une approche plus guidée, consultez nos Quickstarts ou nos bibliothèques.

URL de base

L’Authentication API est accessible en HTTPS. Toutes les URL mentionnées dans la documentation ont la base suivante : https://{yourDomain}

Méthodes d’authentification

Vous avez cinq options pour vous authentifier auprès de cette API :
  • Jeton d’accès OAuth2
  • Client ID et assertion du client (applications confidentielles)
  • Client ID et Client Secret (applications confidentielles)
  • Client ID (applications publiques)
  • Authentification mTLS (applications confidentielles)

Jeton d’accès OAuth2

Envoyez un jeton d’accès valide dans l’en-tête Authorization, en utilisant le schéma d’authentification Bearer. Un exemple est le point de terminaison Get User Info. Dans ce scénario, vous obtenez un jeton d’accès lorsque vous authentifiez un utilisateur, puis vous pouvez envoyer une requête au point de terminaison Get User Info en utilisant ce jeton dans l’en-tête Authorization afin de récupérer le profil de l’utilisateur.

Client ID et Client Assertion

Générez une client assertion contenant un JSON Web Token (JWT) signé pour vous authentifier. Dans le corps de la requête, incluez votre Client ID, un paramètre client_assertion_type dont la valeur est urn:ietf:params:oauth:client-assertion-type:jwt-bearer, ainsi qu’un paramètre client_assertion contenant votre assertion signée. Consultez Private Key JWT pour obtenir des exemples.

Client ID et Client Secret

Envoyez le Client ID et le Client Secret. La méthode à utiliser pour envoyer ces données dépend de la méthode d’authentification du point de terminaison de jeton configurée pour votre application. Si vous utilisez Post, vous devez envoyer ces données dans le corps JSON de votre requête. Si vous utilisez Basic, vous devez envoyer ces données dans l’en-tête Authorization, en utilisant le schéma d’authentification Basic. Pour générer cette valeur d’identification, concaténez votre Client ID et votre Client Secret, séparés par deux-points (:), puis encodez le tout en Base64. Par exemple, le point de terminaison de révocation du jeton d’actualisation. Cette option est offerte uniquement pour les applications confidentielles (comme les applications capables de conserver des informations d’identification de façon sécuritaire sans les exposer à des parties non autorisées).

Client ID

Envoyez le Client ID. Pour les applications publiques (des applications qui ne peuvent pas conserver des informations d’identification de manière sécuritaire, comme les SPA ou les applications mobiles), nous proposons certains points de terminaison accessibles en utilisant uniquement le Client ID. Un exemple est le flux implicite.

Authentification mTLS

Générez un certificat, soit auto-signé, soit signé par une autorité de certification. Ensuite, configurez le réseau Customer Edge qui effectue la négociation mTLS. Une fois que votre réseau de périphérie a vérifié le certificat, transférez la requête vers le réseau de périphérie d’Auth0 avec les en-têtes suivants :
  • La clé API de Custom Domain dans l’en-tête cname-api-key.
  • Le certificat client dans l’en-tête client-certificate.
  • L’état de vérification par l’autorité de certification du certificat client dans l’en-tête client-certificate-ca-verified. Pour en savoir plus, consultez Transmettre la requête.
Pour en savoir plus, consultez S’authentifier avec mTLS.

Paramètres

Pour les requêtes GET, tous les paramètres qui ne sont pas précisés comme segment dans le chemin peuvent être transmis sous forme de paramètre de chaîne de requête HTTP : GET https://{yourDomain}/some-endpoint?param=value&param=value Pour les requêtes POST, les paramètres qui ne figurent pas dans l’URL doivent être encodés en JSON avec un en-tête Content-Type de application/json : curl --request POST --url 'https://{yourDomain}/some-endpoint' --header 'content-type: application/json' --data '{"param": "value", "param": "value"}'
Il existe toutefois une exception : le flux SSO SAML initié par l’IdP, qui utilise à la fois un paramètre de chaîne de requête et une valeur x-www-form-urlencoded.

Test

Vous pouvez tester les points de terminaison à l’aide de l’Authentication API Debugger.

Authentication API Debugger

L’Authentication API Debugger est une extension Auth0 que vous pouvez utiliser pour tester plusieurs points de terminaison de l’Authentication API. Installer Debugger Si vous avez déjà installé l’extension, passez à l’Authentication API Debugger. Le lien varie selon la région de votre tenant : US West, Europe Central ou Australia. Pour en savoir plus sur les régions des tenants, consultez Create Tenants.

Configurer les connexions

  1. Dans l’onglet Configuration, définissez les champs Application (sélectionnez l’application à utiliser pour le test) et Connexion (le nom de la connexion sociale à utiliser).
  2. Copiez l’URL de rappel et ajoutez-la aux URL de rappel autorisées dans les paramètres de l’application.
  3. Dans l’onglet OAuth2 / OIDC, sélectionnez OAuth2 / OIDC Login.

Options des points de terminaison

Configurez d’autres points de terminaison à l’aide des options suivantes :
  • Passwordless : dans l’onglet OAuth2 / OIDC, réglez Username sur le numéro de téléphone de l’utilisateur si connection=sms, ou sur l’adresse courriel de l’utilisateur si connection=email, et Password sur le code de vérification de l’utilisateur. Cliquez sur Resource Owner Endpoint.
  • SAML SSO : dans l’onglet Other Flows, sélectionnez SAML.
  • WS-Federation : dans l’onglet Other Flows, sélectionnez WS-Federation.
  • Logout : dans l’onglet Other Flows, sélectionnez Logout ou Logout (Federated) pour aussi déconnecter l’utilisateur du fournisseur d’identité.
  • Legacy Login : dans l’onglet OAuth2 / OIDC, réglez les champs ID Token, Refresh Token et Target Client ID. Cliquez sur Delegation.
  • Legacy Delegation : dans l’onglet OAuth2 / OIDC, réglez Username et Password. Cliquez sur Resource Owner Endpoint.
  • Legacy Resource Owner : dans l’onglet OAuth2 / OIDC, réglez Username et Password, puis sélectionnez Resource Owner Endpoint.

Flux d’authentification

Configurez les flux d’authentification à l’aide des options suivantes :
  • Flux Authorization Code : Dans l’onglet OAuth2 / OIDC, entrez dans le champ Authorization Code le code que vous avez obtenu à partir de l’octroi Authorization Code, puis entrez la clé dans Code Verifier. Cliquez sur OAuth2 Code Exchange.
  • Flux Authorization Code + PKCE : Dans l’onglet OAuth2 / OIDC, entrez dans le champ Authorization Code le code que vous avez obtenu à partir de l’octroi Authorization Code, puis entrez la clé dans Code Verifier. Cliquez sur OAuth2 Code Exchange.
  • Flux Client Credential : Dans l’onglet OAuth2 / OIDC, sélectionnez OAuth2 Client Credentials.

Erreurs

Lorsqu’une erreur se produit, vous recevez un objet d’erreur. La plupart de ces objets d’erreur contiennent un code d’erreur et une description de l’erreur afin que vos applications puissent cerner le problème plus efficacement. Si vous obtenez un code de réponse HTTP 4xx, vous pouvez supposer qu’il s’agit d’une mauvaise requête de votre côté. Les erreurs 5xx indiquent un problème du côté d’Auth0. Dans ce cas, consultez Auth0 Status Page et @auth0status on Twitter pour vérifier l’état de nos systèmes. Dans tous les autres cas, vous pouvez consulter nos options de soutien.

Limitation du nombre de requêtes

L’Authentication API est soumise à une limitation du nombre de requêtes. Les limites varient selon le point de terminaison. Si vous dépassez la limite de requêtes établie pour un point de terminaison donné, vous recevrez une réponse 429 Too Many Requests avec le message suivant : Too many requests. Check the X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers. Pour en savoir plus sur la limitation du nombre de requêtes, consultez la politique de limitation du nombre de requêtes de l’Auth0 API. Notez que, pour les connexions de base de données, Auth0 limite certains types de tentatives de connexion répétées selon le compte d’utilisateur et l’adresse IP. Pour en savoir plus, consultez Rate Limits on User/Password Authentication.

Soutien

Si vous avez des problèmes ou besoin d’aide concernant votre dossier, vous pouvez toujours communiquer avec notre soutien. Veuillez noter que si vous avez un abonnement au forfait Free et que vous n’êtes plus dans votre période d’essai de 22 jours, vous ne pourrez pas accéder au Support Center ni y ouvrir de tickets. Dans ce cas, vous pouvez obtenir du soutien par l’entremise de la Auth0 Community. Pour en savoir plus sur notre programme de soutien, consultez Options de soutien.