Oauth2 type de flux
Synthèse des flux d’autorisation (Grant Type)
1. Requêtes adressées au point d’extrémité authorize. Les différentes valeurs du paramètre response_type (obligatoire) et du scope openid (facultatif) déterminent les flux d’autorisation (Grant Type) suivants :
Grant Type | response_type | openid | Rem. |
---|---|---|---|
OAuth 2.0 Authorization Code | code | Non | RFC 6749 |
OIDC Authorization Code | code | Oui | |
OAuth 2.0 Implicit | token | X[1] | RFC 6749 |
OIDC Implicit | id_token, id_token token | Oui [2] | OpenID Connect Implicit Client. ’nonce’ est requis. |
OIDC Hybrid | code id_token | Oui | ’c_hash’ est requis |
Hybrid | code token | X | Invalid [3] |
Hybrid | code id_token token | Oui | Invalid [4] |
2. Requêtes adressées directement au point d’extrémité token. Ces flux ne sont définis que par OAuth 2.0 et ne retournent pas de jeton d’identité, que le scope openid soit indiqué ou non.
Grant Type | grant_type | Access Token | Refresh Token | Rem. |
---|---|---|---|---|
Client Credentials | client_credentials | Oui | Oui | [4] |
User Credentials [5] | password | Oui | Non | - |
JWT Bearer | - | Oui | Non | [6] |
[1] Que le scope openid soit fourni ou non, ce flux Implicite ne retourne pas de jeton d’Identité. [2] Que le scope openid soit fourni ou non, ce flux retourne toujours le jeton d’Identité. [3] Non encore implémenté dans l’état actuel du développement de la librairie OAuth 2.0 Server PHP. [4] Ce flux ne fournit pas le jeton d’actualisation. Voir : http://tools.ietf.org/html/rfc6749#section-4.4.3 [5] Ou "Resource Owner Password Credentials Grant Type". Nous citons ce flux, et OAuthSD le met en œuvre, uniquement par souci de complétude. Ce flux ne doit pas être considéré comme une authentification ; au contraire, l’utilisation de ce flux conduit à une impersonnalisation (sur ce sujet, voir : https://www.scottbrady91.com/OAuth/..., nous recommandons donc de ne pas l’utiliser. [6] Cela ressemble beaucoup à l’échange de jeton décrit ici : Un jeton d’identité peut être utilisé pour ... et par cette proposition de standard : Draft IETF : Token Exchange. [7] C’est là l’essence même d’OpenID Connect. Le flux Authorization Code fournit un jeton JWT qui, par sa signature, lie le client, l’utilisateur final et la portée de l’autorisation.
https://oa.dnc.global Type de flux selon les paramètres de l’appel