Passer au contenu principal
Les types d’octroi des applications (ou flux) sont les méthodes par lesquelles les applications peuvent obtenir des jetons d’accès et par lesquelles vous pouvez accorder à une autre entité un accès limité à vos ressources sans exposer d’identifiants. Le protocole OAuth 2.0 prend en charge plusieurs types d’octroi, qui permettent différents types d’accès. Selon les besoins de votre application, certains types d’octroi conviennent mieux que d’autres. Auth0 propose de nombreux flux d’authentification et de et vous permet d’indiquer quels types d’octroi conviennent, selon la propriété grant_types de votre application. Par exemple, si vous souhaitez sécuriser une application mobile, le flux de code d’autorisation avec Proof Key for Code Exchange (PKCE) est le plus approprié. Autrement, si vous souhaitez sécuriser une application côté client, comme une application monopage (SPA), et que vous ne faites pas transiter de jetons entre serveurs, le flux implicite avec Form Post est le plus approprié. Plusieurs types d’octroi sont valides lors de l’enregistrement d’applications. Ils peuvent être répartis dans les catégories suivantes :
  • Octrois conformes aux spécifications : octrois définis par des spécifications externes et conformes à celles-ci, comme Connect (OIDC).
  • Octrois d’extension Auth0 : octrois propres à Auth0 qui sont conformes au mécanisme d’extension OAuth afin de prendre en charge des applications supplémentaires ou d’établir un pont entre et d’autres cadres de confiance.
  • Types d’octroi Auth0 anciens : types d’octroi traditionnels pris en charge uniquement pour les clients existants. Si vous êtes un client existant, nous vous recommandons fortement de passer à une solution de rechange plus sécuritaire.

Types d’octroi disponibles

Types d’octroi conformes aux spécifications

Octrois d’extension Auth0

Type d’octroiDescription
http://auth0.com/oauth/grant-type/password-realmUtilisez un octroi d’extension semblable à l’octroi avec mot de passe du propriétaire de la ressource, qui permet d’indiquer un realm précis
http://auth0.com/oauth/grant-type/mfa-oobDemande d’octroi OOB pour l’authentification multifacteur
http://auth0.com/oauth/grant-type/mfa-otpDemande d’octroi OTP pour l’authentification multifacteur
http://auth0.com/oauth/grant-type/mfa-recovery-codeDemande d’octroi de code de récupération pour l’authentification multifacteur
http://auth0.com/oauth/grant-type/passwordless/otpDemande d’octroi de connexion Passwordless intégrée

Octrois Auth0 anciens

Les octrois Auth0 anciens comprennent :
  • http://auth0.com/oauth/legacy/grant-type/ro
  • http://auth0.com/oauth/legacy/grant-type/ro/jwt-bearer
  • http://auth0.com/oauth/legacy/grant-type/delegation/refresh_token
  • http://auth0.com/oauth/legacy/grant-type/delegation/id_token
  • http://auth0.com/oauth/legacy/grant-type/access_token
Les octrois Auth0 anciens sont des types d’octroi traditionnels pris en charge uniquement pour les anciens clients. Si vous faites partie de ces clients, nous vous recommandons fortement de passer à une solution plus sécurisée. Depuis le 8 juin 2017, toutes les applications se sont vu attribuer une propriété grant_types qui doit être renseignée. Afin d’éviter tout changement de fonctionnalité pour les clients d’Auth0 à ce moment-là, nous avons renseigné la propriété grant_types pour toutes les applications existantes avec tous les octrois Auth0 anciens, les types d’octroi d’extension Auth0 et les types d’octroi conformes à la spécification. À partir de ce moment, les nouveaux clients d’Auth0 ne pouvaient plus ajouter d’octrois Auth0 anciens à leurs applications. Les octrois Auth0 anciens sont offerts uniquement aux anciens clients pendant leur migration vers de nouveaux flux, afin d’éviter des changements incompatibles. Si vous étiez client avant le 8 juin 2017, vous pouvez activer un octroi Auth0 ancien à l’aide de l’ ou de l’ d’Auth0. Si vous utilisez actuellement un octroi Auth0 ancien, consultez le tableau ci-dessous pour déterminer laquelle des solutions sécurisées vous devriez utiliser à la place. Par exemple, si vous mettez en œuvre l’, utilisez Universal Login au lieu du point de terminaison oauth/ro.

Correspondance des types d’octroi

Lorsqu’elles sont enregistrées, les applications ont accès à différents types d’octroi en fonction de leur type, plus précisément selon qu’elles sont confidentielles ou publiques. De plus, les applications de première partie de confiance ont accès à des types d’octroi supplémentaires.

Applications publiques

Lorsqu’une application native ou une application monopage (SPA) est enregistrée dans l’Auth0 Dashboard, elle est automatiquement considérée comme une application publique, ce qui est indiqué par l’attribut token_endpoint_auth_method défini sur none. Par défaut, Auth0 crée des applications publiques avec les grant_types suivants activés :
  • implicit
  • authorization_code
  • refresh_token
Les applications natives peuvent aussi utiliser le type d’octroi device_code. Les applications publiques ne peuvent pas utiliser le type d’octroi client_credentials. Pour utiliser ce type d’octroi, vous devez configurer l’application comme confidentielle plutôt que publique. Utilisez le point de terminaison de l’Auth0 Management API Mettre à jour une application pour définir token_endpoint_auth_method sur client_secret_post, client_secret_basic ou private_key_jwt. Pour en savoir plus, consultez Identifiants de l’application.

Applications confidentielles

Lorsqu’une Application Web régulière ou une application Machine-to-Machine (M2M) est enregistrée dans l’Auth0 Dashboard, elle est automatiquement marquée comme application confidentielle, ce qui est indiqué par le fait que l’indicateur token_endpoint_auth_method est défini à une valeur autre que none. Par défaut, Auth0 crée des applications confidentielles avec les grant_types suivants activés :
  • implicit
  • authorization_code
  • refresh_token
  • client_credentials

Applications de première partie de confiance

Les applications de première partie de confiance ont les mêmes grant_types activés que les applications confidentielles, ainsi que les suivants :
  • password
  • http://auth0.com/oauth/grant-type/password-realm
  • http://auth0.com/oauth/grant-type/mfa-oob
  • http://auth0.com/oauth/grant-type/mfa-otp
  • http://auth0.com/oauth/grant-type/mfa-recovery-code
Si vous utilisez l’Auth0 Dashboard pour activer ou désactiver ces types d’octroi, sachez que tous les types d’octroi Password et sont activés lorsque vous ajoutez le type d’octroi Password ou MFA à votre application. Vous ne pouvez pas les sélectionner individuellement.

Restrictions applicables aux applications tierces

Les applications tierces prennent en charge un nombre limité de types d’octroi, conformément aux pratiques exemplaires d’OAuth 2.1 :
Type d’octroiDisponible pour les applications tierces
authorization_codeOui (PKCE obligatoire)
refresh_tokenOui
client_credentialsOui (applications confidentielles uniquement)
implicitNon
passwordNon
urn:ietf:params:oauth:grant-type:device_codeNon
Octrois MFANon
Octrois anciensNon
Pour en savoir plus, consultez Contrôle de sécurité pour les applications tierces.

Pour en savoir plus