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

Criar e gerenciar chaves de API do usuário - React Native SDK

Nesta página

  • React Hooks
  • 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

As chaves de API do usuário permitem que dispositivos ou serviços se comuniquem com o App Services em nome de um usuário sem compartilhar as credenciais desse usuário. As chaves de API do usuário podem ser revogadas a qualquer momento pelo usuário autenticado. As chaves de API do usuário não expiram sozinhas.

Você pode gerenciar uma chave de API de usuário com o clienteApiKeyAuth acessado com a propriedade User.apiKeys de um usuário autenticado.

Se você estiver utilizando o @realm/react, você poderá acessar o cliente ApiKeyAuth de um usuário com o gancho useUser() em um componente envolto pelo UserProvider.

import {useUser} from '@realm/react';
const user = useUser();
const createUserApiKey = async () => {
const {_id, key, name, disabled} = await user?.apiKeys.create(apiKeyName);
// ...Do something with API key like save it
// or share it with external service that authenticates
// on user's behalf.
};

Para criar uma nova chave de API do usuário, passe um nome exclusivo entre todas as chaves de API do usuário para ApiKeyAuth.create().

O SDK retorna o valor da chave de API do usuário quando você a 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 key , não haverá como recuperá-lo. Você precisará criar uma nova chave de API do usuário.

Você não pode criar uma chave de API do usuário para uma chave de API do servidor ou um usuário anônimo.

const {_id, key, name, disabled} = await user?.apiKeys.create(apiKeyName);

Para obter uma array que liste todas as chaves API de um usuário, ligue para ApiKeyAuth.fetchAll().

Para encontrar uma chave de API específica, passe o _id da chave para ApiKeyAuth.fetch().

const getUserApiKey = async () => {
// 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(apiKey!._id);
};

Para ativar ou desativar uma chave de API do usuário, passe o _id da chave para ApiKeyAuth.enable() ou ApiKeyAuth.disable(). Quando uma chave está desativada, ela não pode ser usada para fazer login em nome do usuário.

await user!.apiKeys.enable(cloudApiKey!._id);
await user!.apiKeys.disable(cloudApiKey!._id);

Para excluir permanentemente uma API de usuário, passe o _id da chave para ApiKeyAuth.delete(). As chaves excluídas não podem ser recuperadas.

await user!.apiKeys.delete(cloudApiKey!._id);

Voltar

Vincular identidades do usuário