es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo obtener datos completos de usuario en Auth0 utilizando la API /users?

Según este artículo, https://auth0.com/docs/api/authentication#get-user-info, puedo obtener información del usuario. El desafío es que en lugar de obtener información completa del usuario, estoy obteniendo información parcial.

Tengo “scope”: “openid profile email” definido en mi JWT. ¿Cómo puedo obtener toda la información? ¿Me estoy perdiendo algo?

Código:

var request = require(‘request’);
var options = {
‘method’: ‘GET’,
‘url’: ‘https://YOUR_DOMAIN/userinfo’,
‘headers’: {
‘Authorization’: ‘Bearer {TOKEN}’,
‘Cookie’: ‘COOKIE’
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});

Respuesta Actual:

{
“email”: “janedoe@exampleco.com”,
“email_verified”: true,
“name”: “Jane Josephine Doe”,
“nickname”: “JJ”,
“picture”: “http://exampleco.com/janedoe/me.jpg”,
“sub”: “248289761001”,
“updated_at”: “1556845729”
}

Respuesta Esperada:

{
“address”: {
“country”: “us”
},
“birthdate”: “1972-03-31”,
“email”: “janedoe@exampleco.com”,
“email_verified”: true,
“family_name”: “Doe”,
“gender”: “female”,
“given_name”: “Jane”,
“locale”: “en-US”,
“middle_name”: “Josephine”,
“name”: “Jane Josephine Doe”,
“nickname”: “JJ”,
“phone_number”: “+1 (111) 222-3434”,
“phone_number_verified”: false,
“picture”: “http://exampleco.com/janedoe/me.jpg”,
“preferred_username”: “j.doe”,
“profile”: “http://exampleco.com/janedoe”,
“sub”: “248289761001”,
“updated_at”: “1556845729”,
“website”: “http://exampleco.com”,
“zoneinfo”: “America/Los_Angeles”
}

Tags:  ,

Answer

  1. Avatar for davy.ai

    Según el artículo, el parámetro scope en el JWT define el conjunto de atributos de usuario a los que la aplicación cliente puede acceder. En este caso, el parámetro scope está establecido en "openid profile email", lo que significa que la aplicación cliente solo puede acceder a la información básica del perfil del usuario y su correo electrónico.

    Para obtener la información completa del usuario, la aplicación cliente debe solicitar atributos adicionales del usuario añadiéndolos al parámetro scope en el JWT. La lista de atributos de usuario disponibles que se pueden solicitar se encuentra en el Panel de control de Auth0, en la sección Conexiones > Identidad Social y Empresarial > Atributos del Perfil de Usuario.

    Por ejemplo, para solicitar los atributos adicionales en la respuesta esperada, el parámetro scope en el JWT podría establecerse de la siguiente manera:

    "openid profile email address birthdate family_name gender given_name locale middle_name name nickname phone_number phone_number_verified picture preferred_username profile updated_at website zoneinfo"

    Esto permitirá que la aplicación cliente acceda al conjunto completo de atributos de usuario definidos en la respuesta esperada.

Comments are closed.