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

Managed chaves de API do usuário - Java SDK

Nesta página

  • Criar uma chave de API do usuário
  • Pesquisar uma chave de API do usuário
  • Habilitar ou desabilitar uma chave de API do usuário
  • Desabilitar uma chave de API do usuário
  • Habilitar uma chave de API do usuário
  • Excluir uma chave de API do usuário

Os usuários do aplicativo podem gerar chaves de API do usuário com o SDK. Você pode permitir que dispositivos ou serviços se comuniquem com o Realm em nome de um usuário associando uma chave de API de usuário exclusiva a cada dispositivo ou serviço.

As chaves de API do usuário estão sempre associadas a um objeto de usuário criado por outro provedor de autenticação não anônimo. Cada usuário pode associar até 20 chaves de usuário à sua conta.

Dica

As chaves de API do usuário não são iguais às chaves de API do servidor, que permitem que um usuário ou serviço se autentique diretamente com o Realm usando o provedor de autenticação de chave de API. Para saber mais sobre as chaves de API do servidor , consulteAutenticação de chaves de API .

Para criar uma nova chave de API do usuário, chame os métodos create() ou createAsync() de um usuário conectado na instância apiKeyAuth . A chave de API do usuário será associada ao usuário conectado e pode ser usada para interagir com o Realm em seu nome. Não é possível criar chaves de API do usuário para usuários anônimos.

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 usá-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.

User user = app.currentUser();
user.getApiKeys().createAsync("Name-of-the-API-Key", result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Successfully created API key: " + result.get().getValue());
} else {
Log.e("EXAMPLE", "Error creating API key: " + result.getError().getErrorMessage());
}
});
val user = app.currentUser()
user!!.apiKeys.createAsync("Name-of-the-API-Key") { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Successfully created API key: ${result.get().value}")
} else {
Log.e("EXAMPLE", "Error creating API key: ${result.error}")
}
}

Para obter uma lista de todas as chaves API do usuário associadas ao usuário conectado, chame o método síncrono fetchAll() ou o método assíncrono fetchAll() de um usuário conectado à instância ApiKeyAuth .

User user = app.currentUser();
user.getApiKeys().fetchAll(result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Successfully fetched API keys: " + Arrays.toString(result.get().toArray()));
} else {
Log.e("EXAMPLE", "Error fetching API keys: " + result.getError().getErrorMessage());
}
});
val user = app.currentUser()
user!!.apiKeys
.fetchAll { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Successfully fetched API keys: ${result.get().toTypedArray()}")
} else {
Log.e("EXAMPLE", "Error fetching API keys: ${result.error}")
}
}

Para procurar uma chave de API de usuário específica para o usuário conectado, passe o ID da chave para os métodos fetch() ou fetchAsync() de um usuário conectado .

User user = app.currentUser();
user.getApiKeys().fetchAsync(api_key_id, result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Successfully fetched API key: " + result.get());
} else {
Log.e("EXAMPLE", "Error fetching API key: " + result.getError().getErrorMessage());
}
});
val user = app.currentUser()
user!!.apiKeys.fetchAsync(api_key_id) { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Successfully fetched API key: ${result.get()}")
} else {
Log.e("EXAMPLE", "Error fetching API key: ${result.error}")
}
}

Para desabilitar uma chave de API de usuário específica sem excluí-la, passe o ID da chave para os métodos disable() ou disableAsync() de um usuário conectado .

User user = app.currentUser();
user.getApiKeys().disableAsync(api_key_id, result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Successfully disabled API key.");
} else {
Log.e("EXAMPLE", "Error disabling API key: " + result.getError().getErrorMessage());
}
});
val user = app.currentUser()
user!!.apiKeys.disableAsync(api_key_id) { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Successfully disabled API key.")
} else {
Log.e("EXAMPLE", "Error disabling API key: ${result.error}")
}
}

Para habilitar uma chave de API de usuário específica que foi desabilitada anteriormente, passe o ID da chave para os métodos enable() ou enableAsync() de um usuário conectado na instância ApiKeyAuth .

User user = app.currentUser();
user.getApiKeys().enableAsync(api_key_id, result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Successfully enabled API key.");
} else {
Log.e("EXAMPLE", "Error fetching API key: " + result.getError().getErrorMessage());
}
});
val user = app.currentUser()
user!!.apiKeys.enableAsync(api_key_id) { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Successfully enabled API key.")
} else {
Log.e("EXAMPLE", "Error fetching API key: ${result.error}")
}
}

Para remover permanentemente uma chave de API de usuário específica, passe o ID da chave para os métodos delete() ou deleteAsync() de um usuário conectado .

User user = app.currentUser();
user.getApiKeys().deleteAsync(api_key_id, result -> {
if (result.isSuccess()) {
Log.v("EXAMPLE", "Successfully deleted API key.");
} else {
Log.e("EXAMPLE", "Error deleting API key: " + result.getError().getErrorMessage());
}
});
val user = app.currentUser()
user!!.apiKeys.deleteAsync(api_key_id) { result ->
if (result.isSuccess) {
Log.v("EXAMPLE", "Successfully deleted API key.")
} else {
Log.e("EXAMPLE", "Error deleting API key: ${result.error}")
}
}

Voltar

Vincular identidades do usuário