I do login with current options:
const authOptions = {
realm: 'Username-Password-Authentication',
username: email,
password: password,
scope: 'openid profile email read:users user_id id'
}
But, when i get the userInfo the user_metadata does not return.
If you’re using non-OIDC conformant authentication (aka legacy) then including user_metadata
as one of the requested scopes would lead to the user metadata being included in the issued ID token and also available at the /userinfo
endpoint.
If you’re using OIDC conformant authentication (aka new) then the contents of the ID token and the responses at the /userinfo
endpoint will not include the user_metadata
as a claim even if you request it as part of the scope. This is due to the fact that user_metadata
is not a standard OIDC claim.
In the OIDC mode you however include custom claims in the issued token and the same information that was included in the ID token will also be returned in calls to /userinfo
. For reference information on how to include custom claims see: OpenID Connect Scopes
For general information on the differences between the legacy and new flows see: https://auth0.com/docs/api-auth/intro#legacy-vs-new
I can’t found this option in my client config screen
I can’t found this option in my client config screen
OIDC-conformant can be triggered in different ways (see this for additional info), but you can always force it to be enable by configuring a client level setting: Dashboard > Clients > Settings > Show advanced settings > OAuth > OIDC Conformant flag
Hi @bruno.quaresma @jmangelo
Can you explain a little how you did it please, I have the same problem
The recommended approach would be to enable OIDC conformance and then check the linked docs to see how to include information from user metadata into the issued tokens and also available at the user info endpoint.