Bonjour,
Ces derniers jours, j’essaie de comprendre comment fonctionne OpenID en conjonction avec Line : https://developers.line.biz/en/reference/line-login/, j’ai donc installé openid
Le document de découverte OpenID Connect pour Line se trouve ici :
https://access.line.me/.well-known/openid-configuration
J’ai configuré les scopes openid profile et email.
Selon line.biz, l’adresse e-mail se trouve dans le token. Et tout semble bien se passer jusqu’à présent lorsque je consulte mes logs.
J’ai trouvé l’adresse e-mail dans le fichier JWT extrait du token
comme ceci :
Journal OIDC : JWT vérifié—
iss : https://access.line.me
sub : Uf3156a0081c563144b3
aud : ‘1657458025’
exp : 1662826967
iat : 1662823367
nonce : f5930aa4c2bd1b3807d
amr :
- linesso
email : example@example.com
Mais après avoir demandé https://api.line.me/oauth2/v2.1/userinfo
L’adresse e-mail n’est pas incluse. Seulement le nom et l’ID utilisateur sub.
Un coup d’œil à la documentation de Line sous userinfo semble indiquer que c’est correct. Le userinfo n’inclut pas l’e-mail.
Alors, que puis-je faire pour extraire l’adresse e-mail de la réponse JWT ? J’ai essayé d’utiliser les claims et peut-être y a-t-il un moyen de l’obtenir que j’ai manqué ? Ou est-ce que cela ne mènera nulle part ? Ça me rend chèvre ![]()
Merci !
Modification :
J’ai lu sur la page du plugin OpenID : openid
Si le document de découverte inclut un paramètre userinfo_endpoint, alors le plugin l’utilisera pour collecter les métadonnées de l’utilisateur. Sinon, le plugin extraira les métadonnées de l’id_token (un JWT) fourni par le endpoint du token.
Donc, une solution serait de dire au plugin de ne pas utiliser le endpoint userinfo ? Ce serait génial. Mais comment puis-je faire cela ?