Menu Docs
Página inicial do Docs
/ /
Atlas Device SDKs
/ /

Criar e gerenciar chaves de API do usuário - SDK da Web

Nesta página

  • Visão geral
  • Criar uma chave de API do usuário
  • Pesquisar uma chave de API do usuário
  • Habilitar ou desabilitar uma chave de API
  • Excluir uma chave de API

Você pode usar o SDK da Web para criar e gerenciarchaves de API de usuário que permitem que os serviços façam login e interajam com sua aplicação em nome de um usuário existente sem exigir que o usuário se autentique novamente.

As chaves API do usuário são gerenciadas como parte do fornecedor de autenticação da Chave API, mas só podem ser criadas para usuários associados a um fornecedor de autenticação diferente e não anônimo.

Os objeto de usuário no Web SDK incluem um objeto ApiKeyAuth que expõe métodos para trabalhar com as API desse usuário.

Para criar uma nova chave de API do usuário, chame ApiKeyAuth.create() com um nome de identificação para a chave. O nome deve ser uma string exclusiva entre todas as chaves de API do usuário.

Aviso

Armazenar o valor da chave de API

O SDK só retorna o valor da chave de API do usuário quando você o cria. Certifique-se de armazenar o valor key com segurança para que você possa utilizá-lo para se conectar.

Se você perder ou não armazenar o valor do key , não haverá como recuperá-lo. Você precisará criar uma nova chave de API do usuário.

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

Para obter uma array que lista todas as chaves de API de um usuário, chame ApiKeyAuth.fetchAll(). Você também pode encontrar uma chave de API específica chamando ApiKeyAuth.fetch() com o _id da chave.

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);

Você pode habilitar ou desabilitar uma chave de API do usuário chamando ApiKeyAuth.enable() ou ApiKeyAuth.disable() com o _id da chave. Quando uma chave está desativada, ela não pode ser usada para fazer login em nome do usuário.

// 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);

Você pode excluir permanentemente uma chave de API do usuário ligando para ApiKeyAuth.delete() com o _id da chave. As chaves excluídas não podem mais ser usadas para fazer login em nome do usuário.

// 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);

Voltar

Vincular identidades do usuário

Próximo

Consulta MongoDB