Le protocole Oauth2 ne proposant que tres récemment l’équivalent en standard du service discovery, il est nécessaire de reporter les urls d’autorisation (authorization_endpoint) et de validation du code (token_endpoint) dans le paramétrage pour les connecteurs Oauth2 (puisqu’ils ne prennent pas en charge cette auto-configuration).
Vous pouvez retrouver les urls d’api Oauth2 nécessaires dans le flux json retourné par le service de discovery OpenID Connect.
Ce qui donne l’ensemble de paramètres suivants:
Exemple :
Le protocole Oauth2 ne prend pas en charge le jeton d’identification id_token.
Si malgré tout, votre connecteur ou librairie OAuth2 peut vous donner accès à ce token à l’issue du processus d’authentification OAuth2, le scope doit être renseigné à “openid profile”. Il vous sera alors possible d’identifier l’utilisateur en analysant ce token (qui est au format JWT).
Sinon, il est possible d’utiliser l’API REST UserInfo OpenID Connect.
L’url de cette api correpond à la clé userinfo_endpoint renvoyée par l’api description du serveur OpenID Connect.
Exemple:
GET /tenant/auth/oauth2/userinfo HTTP/1.1
Host: secure-auth.team.preprod.moovapps.com
Authorization: Bearer SlAV32hkKG
Ce qui permet d’utiliser le token d’api pour obtenir des informations du profil utilisateur au format OpenID Connect.
Exemple:
HTTP/1.1 200 OK
Content-Type: application/json
{
"sub": "248289761001",
"name": "Jane Doe",
"given_name": "Jane",
"family_name": "Doe",
"preferred_username": "j.doe",
"email": "janedoe@example.com",
"picture": "http://example.com/janedoe/me.jpg"
}