Docs Menu
Docs Home
/ /
Autenticar y administrar usuarios

Leer metadatos del usuario

Atlas App Services representa internamente a cada usuario de la aplicación con un objeto de usuario que incluye un ID único y metadatos adicionales que lo describen. Puede acceder a los objetos de usuario:

Los objetos de usuario tienen la siguiente forma:

{
"id": "<Unique User ID>",
"type": "<User Type>",
"data": {
"<Metadata Field>": <Value>,
...
},
"custom_data": {
"<Custom Data Field>": <Value>,
...
},
"identities": [
{
"id": <Unique Identity ID>,
"provider_type": "<Authentication Provider>",
"data": {
"<Metadata Field>": <Value>,
...
}
}
]
}
Campo
Tipo
Descripción

id

string

Una representación en string del ObjectId que identifica de forma única al usuario.

type

string

El tipo de usuario. Son posibles los siguientes tipos:

Tipo
Descripción

"normal"

El usuario es un usuario de la aplicación que inició sesión a través de un proveedor de autenticación distinto del proveedor de la clave API.

"servidor"

El usuario es un proceso de servidor que inicia sesión con cualquier tipo de clave API de App Services.

"sistema"

El usuario es el usuario del sistema que pasa por alto todas las reglas.

data

Documento

Un documento que contiene metadatos que describen al usuario. Este campo combina los datos de todos los identities asociados al usuario, por lo que los nombres y valores exactos de los campos dependen de los proveedores de autenticación con los que se haya autenticado el usuario.

Nota

Las funciones del sistema no tienen datos de usuario

En las funciones del sistema, el user.data objeto está vacío. Use context.runningAsSystem() para comprobar si la función se ejecuta como usuario del sistema.

custom_data

Documento

Un documento de la colección de datos de usuario personalizada de su aplicación que especifica el ID del usuario. Puede usar la colección de datos de usuario personalizada para almacenar datos arbitrarios sobre los usuarios de su aplicación. Si name configura el campo, App Services rellena el campo de username metadatos con el valor de name retorno. App Services obtiene automáticamente una nueva copia de los datos cada vez que un usuario actualiza su token de acceso, como al iniciar sesión. Los datos subyacentes son un documento MongoDB normal, por lo que puede usar operaciones CRUD estándar a través del servicio MongoDB Atlas para definir y modificar los datos personalizados del usuario.

Nota

Evite almacenar grandes cantidades de datos de usuarios personalizados

Los datos de usuario personalizados están limitados a 16MB, el tamaño máximo de un documento de MongoDB. Para evitar alcanzar este límite, considere almacenar datos de usuario pequeños y relativamente estáticos en cada documento de datos de usuario personalizados, como el idioma preferido del usuario o la URL de su imagen de avatar. Para datos grandes, ilimitados o que se actualizan con frecuencia, considere almacenar solo una referencia a los datos en el documento de usuario personalizado o almacenar los datos con una referencia al ID del usuario en lugar de en el documento de usuario personalizado.

identities

arreglo

Una lista de identidades de proveedores de autenticación asociadas al usuario. Cuando un usuario inicia sesión por primera vez con un proveedor específico, App Services lo asocia con un objeto de identidad que contiene un identificador único y metadatos adicionales del proveedor sobre el usuario. Para los inicios de sesión posteriores, App Services actualiza los datos de identidad existentes, pero no crea una nueva identidad. Los objetos de identidad tienen el siguiente formato:

{
"id": "<Unique ID>",
"provider_type": "<Provider Name>",
"data": {
"<Metadata Field>": <Value>,
...
}
}
Nombre de campo
Descripción

id

Una cadena generada por el proveedor que identifica de forma única esta identidad

provider_type

El tipo de proveedor de autenticación asociado con esta identidad.

data

Metadatos adicionales del proveedor de autenticación que describen al usuario. Los nombres y valores exactos de los campos variarán según el proveedor de autenticación con el que haya iniciado sesión el usuario. Para obtener un desglose de los datos de identidad del usuario por proveedor, consulte Metadatos del usuario.

Nota

En general, App Services crea un objeto de usuario para un usuario determinado la primera vez que se autentica. Si crea un usuario de prueba con correo electrónico y contraseña a través de la interfaz de usuario de App Services, App Services crea el objeto de usuario de ese usuario inmediatamente.

Para encontrar información sobre uno o más usuarios, haga clic en App Users En el menú de navegación izquierdo, la página se abre en la pestaña Users, que contiene una lista de usuarios asociados a su aplicación Atlas App Services:

La pantalla de Usuarios en la interfaz de usuario, que muestra una lista con filtro de todos los usuarios
haga clic para ampliar

Tip

Si ya conoce el ID del usuario que desea encontrar, puede buscar su ID en la barra de búsqueda de la tabla Users.

Para buscar información sobre uno o más usuarios, llame a appservices users list. La CLI le solicitará el ID de su aplicación y listará los usuarios de esa aplicación para que los seleccione.

appservices users list

También puedes especificar los argumentos cuando llamas al programa:

appservices users list --app=<Your App ID>

Para buscar información sobre uno o más usuarios, cree una solicitud GET con el siguiente formato. Debe especificar el ID del grupo y de la aplicación.

curl --request GET \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users

Si ya conoce el ID del usuario que desea encontrar, puede agregar el ID a la URL de solicitud:

curl --request GET \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users/<userId>

Puede especificar filtros que limiten una lista de usuarios a un subconjunto de usuarios que satisfagan las condiciones del filtro.

Utilice el filter bar en la parte superior de la tabla Users para definir filtros. Puede filtrar por:

  • Provider type

    • Anónimo

    • Correo electrónico/Contraseña

    • Llave API

    • Facebook

    • Google

    • Manzana

    • JWT personalizado

    • Función personalizada

  • Status

    • Confirmado

    • Pendiente

  • State

    • Activado

    • Discapacitados

Puede filtrar las operaciones del usuario con los siguientes indicadores y argumentos:

  • --pendingSi se incluye, se listan solo los usuarios pendientes. De lo contrario, se listan solo los usuarios confirmados.

  • --state:Enumera solo los usuarios en el estado especificado

    • "enabled"

    • "disabled"

  • --provider:

    • "anon-user"

    • "local-userpass"

    • "api-key"

    • "oauth2-facebook"

    • "oauth2-google"

    • "oauth2-apple"

    • "custom-token"

    • "custom-function"

Ejemplo

El siguiente comando limita la salida únicamente a usuarios con correo electrónico/contraseña pendientes (no confirmados):

appservices users list --pending --provider="local-userpass"

Ejemplo

El siguiente comando limita la salida únicamente a los usuarios deshabilitados:

appservices users list --state="disabled"

Puede filtrar las operaciones de usuario con los siguientes parámetros de consulta:

Parameter
Tipo
Descripción

after

string

El id del último usuario devuelto por una solicitud paginada anterior.

sort

string

Nombre del campo por el que se ordenarán los resultados. El único valor válido es el predeterminado: _id.

desc

booleano

Si es true, devuelve los resultados ordenados en orden descendente. Si no se especifica o se establece como falso, los resultados se devuelven en orden ascendente.

Ejemplo

La siguiente solicitud devuelve los usuarios en orden descendente por su _id:

curl --request GET \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users?desc=true

También puede limitar los resultados solo a usuarios con correo electrónico o contraseña pendientes (sin confirmar). Cree una GET solicitud con el siguiente formato:

curl --request GET \
--header 'Authorization: Bearer <access_token>' \
https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/user_registrations/pending_users

Cuando un usuario se conecta a su aplicación, Atlas App Services registra información similar a la siguiente:

Una vista detallada para un usuario específico que enumera los dispositivos que ha usado con su aplicación
haga clic para ampliar

La información registrada incluye:

  • La plataforma del dispositivo, que será un cliente http ("chrome", "firefox", "phantomjs", etc.) o un sistema operativo móvil ("ios", "android", etc.)

  • La versión de la plataforma.

  • La versión de su aplicación en el dispositivo.

  • Un identificador de dispositivo único.

Para ver esta información, desde la lista de usuarios:

  1. Encuentra el usuario cuyos dispositivos deseas ver.

  2. Haga clic en ... para abrir el menú de opciones y seleccione View Devices.

Cada vez que un usuario se conecta a su aplicación y se autentica utilizando uno de los proveedores de autenticación que ha habilitado, App Services registra los datos del proveedor.

Una vista detallada para un usuario específico que enumera metadatos sobre él provenientes de un proveedor de autenticación
haga clic para ampliar

Para ver esta información, desde la lista de usuarios:

  1. Encuentre el usuario cuyos datos de proveedor desea ver.

  2. Haga clic en ... para abrir el menú de opciones y seleccione View Provider Data.

App Services registra todas las solicitudes realizadas por cada usuario de tu aplicación, incluidas las llamadas a funciones ejecutadas. Además, si una función escribe en el registro usando console.log, console.warn o console.error, estas entradas se incluirán en la salida del registro de la función.

Una vista detallada para un usuario específico que muestra un registro de sus interacciones con su aplicación
haga clic para ampliar

Para ver esta información, desde la lista de usuarios:

  1. Encuentre el usuario cuyos datos de actividad desea ver.

  2. Haga clic en View Activity. Esto le redirigirá al registro de solicitudes realizadas por ese usuario específico. Puede expandir una entrada para ver los detalles de esa solicitud.

  • El objeto de usuario contiene información relevante sobre el usuario que puedes utilizar en la lógica de tu aplicación.

  • La información exacta contenida en el objeto de usuario depende de los proveedores de autenticación utilizados.

  • Puede buscar usuarios en la página Users de la interfaz de usuario de Servicios de aplicaciones.

  • App Services registra información como los dispositivos conectados del usuario, los datos del proveedor y el registro de actividad.

Volver

Definir metadatos de usuario

En esta página