Ler metadados do usuário
Nesta página
Visão geral
O Atlas App Services representa cada usuário do aplicativo internamente com um objeto de usuário que inclui um ID exclusivo e metadados adicionais que descrevem o usuário. Você pode acessar objetos de usuário:
Com a UI do App Services, CLI ou API de administração para localizar e filtrar usuários.
Na interface do usuário do App Services, visualizando os dados do usuário.
Em uma Função acessando a interface context.user .
Em uma expressão de regra com a expansão
%%user
.Em aplicativos de cliente Android, iOS, Nó, React Native e .NET usando um Realm SDK.
Esquema
Os objetos de usuário têm o seguinte formato:
{ "id": "<Unique User ID>", "type": "<User Type>", "data": { "<Metadata Field>": <Value>, ... }, "custom_data": { "<Custom Data Field>": <Value>, ... }, "identities": [ { "id": <Unique Identity ID>, "provider_type": "<Authentication Provider>", "data": { "<Metadata Field>": <Value>, ... } } ] }
Campo | Tipo | Descrição | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id | string | Uma representação de string do ObjectId que identifica exclusivamente o usuário. | ||||||||||||||||
type | string | O tipo do usuário. Os seguintes tipos são possíveis:
| ||||||||||||||||
data | documento | Um documento que contém metadados que descrevem o usuário. Esse campo combina os dados de todos os ObservaçãoAs funções do sistema não têm dados de usuárioNas funções do sistema, o objeto | ||||||||||||||||
custom_data | documento | Um documento da collection de dados de usuário customizada do seu aplicativo que especifica o ID do usuário. Você pode usar a collection de dados de usuário customizada para armazenar dados arbitrários sobre os usuários do seu aplicativo. Se você definir o campo ObservaçãoEvite o armazenar grandes volumes de dados de usuários personalizados.O usuário de dados personalizado é limitado a | ||||||||||||||||
identities | array | Uma lista de identidades do fornecedor de autenticação associadas ao usuário. Quando um usuário se conecta pela primeira vez com um provedor específico, o App Services associa o usuário a um objeto de identidade que contém um identificador exclusivo e metadados adicionais sobre o usuário do fornecedor. Para logins subsequentes, o App Services atualiza os dados de identidade existentes, mas não cria uma nova identidade. Os objetos de identidade têm o seguinte formulário:
|
Observação
Em geral, App Services cria um objeto para um determinado usuário na primeira vez que ele se autentica. Se você criar um usuário de teste de e-mail/senha por meio da Realm UI, o App Services criará o objeto desse usuário imediatamente.
Encontrar usuários
Para encontrar informações sobre um ou mais usuários, clique em App Users no menu de navegação esquerdo. A página abre na guia Users que tem uma lista de usuários associados ao seu Atlas App Services :
Dica
Se você já souber o ID do usuário que deseja encontrar, poderá pesquisar o ID dele na barra de pesquisa da tabela Users .
Para encontrar informações sobre um ou mais usuários, ligue para appservices users
list
. A CLI solicitará seu ID do aplicativo e listará os usuários desse aplicativo para você selecionar.
appservices users list
Você também pode especificar os argumentos ao chamar o programa:
appservices users list --app=<Your App ID>
Para encontrar informações sobre um ou mais usuários, crie uma solicitação GET
no seguinte formato. Você deve especificar o ID do grupo e do aplicativo.
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users
Se você já souber o ID do usuário que deseja encontrar, poderá anexar o ID ao URL de solicitação:
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users/<userId>
Filtrar usuários
Você pode especificar filtros que limitam uma lista de usuários a um subconjunto de usuários que satisfazem as condições de filtro.
Utilize o filter bar na parte superior da tabela Users para definir filtros. Você pode filtrar por:
Provider type
Anônimo
E-mail/senha
Chave API
Facebook
Google
Apple
JWT personalizado
Função personalizada
Status
Confirmado
Pendente
State
Habilitado
desabilitado
Você pode filtrar operações de usuário com os seguintes sinalizadores e argumentos:
--pending
: se incluída, lista apenas usuários pendentes. Caso contrário, lista apenas usuários confirmados.--state
: lista somente usuários no estado especificado"enabled"
"disabled"
--provider
:"anon-user"
"local-userpass"
"api-key"
"oauth2-facebook"
"oauth2-google"
"oauth2-apple"
"custom-token"
"custom-function"
Exemplo
O comando a seguir limita a saída apenas a usuários de e-mail/senha pendentes (não confirmados):
appservices users list --pending --provider="local-userpass"
Exemplo
O comando a seguir limita a saída apenas para usuários desabilitados :
appservices users list --state="disabled"
Você pode filtrar operações de usuário com os seguintes parâmetros de query:
Parâmetro | Tipo | Descrição |
---|---|---|
after | string | O id do último usuário retornou por uma solicitação paginada anterior. |
sort | string | O nome do campo pelo qual classificar os resultados. O único valor válido é o padrão: _id . |
desc | booleano | Se true , retorna resultados ordenados em ordem decrescente. Se não for especificado ou definido como falso, os resultados retornarão em ordem crescente. |
Exemplo
A solicitação a seguir retorna os usuários em ordem decrescente de acordo com seus _id
:
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/users?desc=true
Você também pode limitar os resultados apenas a usuários de e-mail/senha pendentes (não confirmados). Crie uma solicitação GET
no seguinte formato:
curl --request GET \ --header 'Authorization: Bearer <access_token>' \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/user_registrations/pending_users
Exibir dados do usuário
Exibir os dispositivos de um usuário
Quando um usuário se conecta ao seu aplicativo, o Atlas App Services registra informações semelhantes às seguintes:
As informações registradas incluem:
A plataforma do dispositivo, que será um cliente http("chrome", "firefox", "phantomjs", etc.) ou um sistema operacional móvel ("ios","android", etc.)
A versão da plataforma.
A versão do seu aplicativo no dispositivo.
Um ID de dispositivo exclusivo.
Para visualizar essas informações, na lista de usuários:
Encontre o usuário cujos dispositivos você deseja visualizar.
Clique em ... para abrir o menu de opções e selecione View Devices.
Exibir dados do fornecedor de um usuário
Sempre que um usuário se conecta à sua aplicação e se autentica usando um dos provedor de autenticação que você habilitou, o App Services registra os dados do fornecedor.
Para visualizar essas informações, na lista de usuários:
Encontre o usuário cujos dados do fornecedor você deseja visualizar.
Clique em ... para abrir o menu de opções e selecione View Provider Data.
Visualizar o registro de atividades de um usuário
App Services registram todas as solicitações feitas por cada um de seus aplicativos usuários, incluindo chamadas de funções executadas. Além disso, se uma função gravar em o registro usando console.log
, console.warn
ou console.error
, essas entradas serão incluídas na saída de log da função.
Para visualizar essas informações, na lista de usuários:
Encontre o usuário cujos dados de atividade você deseja visualizar.
Clique View Activity. Isso redireciona você para um registro de solicitações feitas por esse usuário específico. Você pode expandir uma entrada para visualizar os detalhes dessa solicitação.
Resumo
O objeto de usuário contém informações relevantes sobre o usuário que você pode usar na lógica do seu aplicativo.
A informação exata contida no objeto de usuário depende dos provedores de autenticação utilizados.
Você pode pesquisar usuários na página
Users
da interface do usuário do App Services.O App Services registra informações como os dispositivos conectados do usuário, os dados do fornecedor e o registro de atividades.