Autenticação da chave API
Nesta página
Visão geral
O provedor de autenticação de chave API permite que os usuários façam login usando chaves geradas.
O App Services dá suporte aos dois tipos de chaves de API a seguir:
Chaves de API do servidor: chaves de API associadas a usuários do servidor criadas a partir do App Services CLI, API ou UI.
Chaves API do usuário: chaves API criadas a partir dos SDKs do Realm associados aos usuários do aplicativo.
As chaves API não expiram automaticamente.
Habilitar autenticação de chave de API
Para trabalhar com usuários de chaves de API, primeiro você deve habilitar o fornecedor de autenticação de chaves de API. O fornecedor de autenticação de chave de API não tem nenhuma opção de configuração.
Você pode habilitar e configurar o provedor de autenticação de chave de API na UI do App Services selecionando API Keys na página Authentication .
Para habilitar e configurar o provedor de autenticação da chave de API com :ref:`App Services CLI <appservices-cli>`
, defina um objeto de configuração para ele no /auth/providers.json
.
As configurações do fornecedor da chave de API têm o seguinte formato:
{ "api-key": { "name": "api-key", "type": "api-key", "disabled": false } }
Dica
O name
de um fornecedor de autenticação é sempre igual ao seu type
.
Objetos de usuário da chave da API
Cada usuário do App Services tem um objeto de metadados exclusivo. O objeto é passado para funções chamadas pelo usuário e expressões de regra para solicitações feitas pelo usuário. Em objetos de usuário da chave de API, o campo type
tem o valor de "server"
. Por exemplo:
{ id: "<Unique User ID>", type: "server", data: <user data object>, custom_data: <custom user data object>, identities: <array of user identities>, }
Você pode usar este campo para avaliar se as solicitações vêm de chaves de API.
Para obter mais informações, consulte Objetos de usuário.
Chaves de API do servidor
As chaves de API do servidor são geradas em um contexto do lado do servidor usando App Services CLI, API ou UI. Ao criar uma chave de API do servidor, você também cria um usuário de servidor associado.
Você pode fornecer uma chave de servidor para aplicativos e serviços externos para permitir que eles se autentiquem diretamente com o App Services.
Você pode associar até 100 chaves de API de servidor a uma aplicação.
Criar uma chave de API do servidor
Você deve habilitar o fornecedor de chaves de API antes de criar uma chave de API.
Importante
Você deve copiar o valor da chave do servidor assim que criá-la. Depois de criar a chave de API, você não poderá mais recuperá-la.
Selecione App Users no menu de navegação esquerdo.
Selecione o botão Authentication Providers e, em seguida, o fornecedor API Keys.
Se o fornecedor de chave de API não estiver ativado no momento, você deverá ativá-lo e, em seguida, distribuir suas alterações antes de criar uma chave.
Clique em Create API Key.
Insira um nome exclusivo para a chave e clique em Save.
Para criar uma chave API de servidor, chame appservices users create
e especifique --type=api-key
. A CLI solicitará seu ID do aplicativo, bem como um nome para a nova chave de API.
appservices users create --type=api-key
Você também pode especificar os argumentos ao chamar o programa:
appservices users create --type=api-key \ --app=<Your App ID> \ --name=<API Key Name>
Para criar uma chave de API de servidor usando a API de administração, faça uma solicitação ao endpoint Criar uma nova chave de API .
Chaves de API do usuário
Você pode gerar chaves de API do usuário com Realm SDKs. Cada chave de API do usuário está associada a um único usuário não anônimo. Cada usuário pode associar até 20 chaves de API de usuário à sua conta. Após a chave ser associada a uma conta de usuário, o usuário pode usar a chave para autenticar. O diagrama a seguir mostra como criar e usar uma chave de API do usuário:
Para saber como gerar chaves de API do usuário, consulte a documentação do Realm SDK.
Exemplos do Realm SDK
Para obter exemplos de código que demonstram como registrar e se conectar usando a autenticação de chaves de API, consulte a documentação dos Realm SDKs.
Conectar com uma chave de API
O Realm SDK pode fazer login com uma chave de API de usuário ou com um servidor existente.
Criar uma chave de API do usuário
O Realm SDK pode criar uma nova chave de API do usuário para uma conta de usuário existente.
Ainda não disponível para C++ SDK