Docs Menu
Docs Home
/ /
Gestión de usuarios

Crear y administrar claves API de usuario - SDK web

Puede utilizar el SDK web para crear y administrar Claves API de usuario que permiten que los servicios inicien sesión e interactúen con su aplicación en nombre de un usuario existente sin necesidad de que el usuario vuelva a autenticarse.

Las claves API de usuario se administran como parte del proveedor de autenticación de claves API, pero solo se pueden crear para usuarios asociados con un proveedor de autenticación diferente y no anónimo.

Los objetos de usuario en el SDK web incluyen un ApiKeyAuth objeto que expone métodos para trabajar con las claves API de ese usuario.

Para crear una nueva clave API de usuario, llama a ApiKeyAuth.create() con un nombre identificativo para la clave. El nombre debe ser una string única entre todas las claves API del usuario.

Advertencia

Almacenar el valor de la clave API

El SDK solo devuelve el valor de la clave API del usuario al crearla. Asegúrate de almacenar el valor key de forma segura para poder usarlo al iniciar sesión.

Si pierde o no guarda el valor key, no podrá recuperarlo. Deberá crear una nueva clave API de usuario.

const user = app.currentUser;
const key = await user.apiKeys.create("myApiKey");

Para obtener una matriz que incluya todas las claves API de un usuario, llame a ApiKeyAuth.fetchAll(). También puede encontrar una clave API específica llamando a ApiKeyAuth.fetch() con el _id de la clave.

const user = app.currentUser;
// List all of a user's keys
const keys = await user.apiKeys.fetchAll();
// Get a specific key by its ID
const key = await user.apiKeys.fetch(API_KEY_ID);

Puede habilitar o deshabilitar una clave API de usuario llamando a ApiKeyAuth.enable() o ApiKeyAuth.disable() con el _id de la clave. Cuando una clave está deshabilitada, no se puede usar para iniciar sesión en nombre del usuario.

// Get the ID of a User API Key
const user = app.currentUser;
const apiKeys = await user.apiKeys.fetchAll();
const keyId = apiKeys[0]["_id"];
// Enable the User API Key
await user.apiKeys.enable(keyId);
// Disable the User API Key
await user.apiKeys.disable(keyId);

Puedes eliminar permanentemente la clave API de un usuario llamando a ApiKeyAuth.delete() con el _id ​​de la clave. Las claves eliminadas ya no se pueden usar para iniciar sesión en nombre del usuario.

// Get the ID of a User API Key
const user = app.currentUser;
const apiKeys = await user.apiKeys.fetchAll();
const keyId = apiKeys.find((key) => key.name === "apiKeyToDelete")._id;
// Delete the User API Key
await user.apiKeys.delete(keyId);

Volver

Vincular identidades de usuario

En esta página