Como gerenciar e pesquisar contas de usuários - Amazon Cognito

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como gerenciar e pesquisar contas de usuários

Os grupos de usuários podem conter milhões de usuários. Trabalhar com um conjunto de dados desse porte é um desafio para os administradores. O Amazon Cognito tem ferramentas para encontrar e modificar perfis de usuário. Os principais métodos para encontrar usuários são o menu Usuários do console do Amazon Cognito e com ListUsers. Dos métodos que recuperam informações sobre usuários, essas são as opções que não afetam os custos, ao contrário, por exemplo, de AdminGetUser.

Esta seção do guia contém informações sobre como encontrar e atualizar perfis de usuário em um grupo de usuários.

Como visualizar atributos do usuário

Siga o procedimento abaixo para visualizar atributos do usuário no console do Amazon Cognito.

Para visualizar atributos do usuário
  1. Acesse o console do Amazon Cognito. Se solicitado, insira suas credenciais da AWS.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Clique no menu Usuários e escolha um usuário na lista.

  5. Na página de detalhes do usuário, em User attributes (Atributos do usuário), você pode ver quais atributos estão associados ao usuário.

Como redefinir uma senha do usuário

Siga o procedimento abaixo para redefinir uma senha do usuário no console do Amazon Cognito.

Para redefinir uma senha do usuário
  1. Acesse o console do Amazon Cognito. Se solicitado, insira suas credenciais da AWS.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Clique no menu Usuários e escolha um usuário na lista.

  5. Na página de detalhes do usuário, escolha Actions (Ações), Reset password (Redefinir senha).

  6. Na caixa de diálogo Reset password (Redefinir senha), leia as informações e, quando estiver pronto, escolha Reset (Redefinir).

    Essa ação resulta imediatamente no envio de um código de confirmação para o usuário e desabilita a senha atual do usuário, ao alterar o estado do usuário para RESET_REQUIRED. O código Reset password (Redefinir senha) é válido por 1 hora.

Habilitar, desabilitar e excluir contas de usuário

Você pode excluir perfis de usuário não utilizados ou, se quiser impedir temporariamente o acesso, desabilitá-los. Os usuários podem excluir suas próprias contas, mas somente os administradores do grupo de usuários podem habilitar e desabilitar contas de usuário.

Efeito da exclusão

Os usuários não podem fazer login com contas de usuário excluídas e, para recuperar o acesso, devem se cadastrar ou criar uma nova conta.

Efeito da desabilitação de contas

Quando você desabilita uma conta de usuário, o Amazon Cognito invalida automaticamente todas as sessões autenticadas, desativa a conta do usuário para login e revoga os tokens de acesso e atualização. O Amazon Cognito retorna um erro invalid_request com a mensagem User is not enabled quando um usuário tenta fazer login em uma conta que você desabilitou. Esse comportamento não muda com as configurações de divulgação de existência do usuário para o cliente de aplicação. É possível desabilitar as contas de usuário locais e os perfis locais das contas de usuário federado. Quando os usuários fazem login com o login gerenciado ou com a IU hospedada clássica, você desabilita a conta deles e eles tentam fazer login novamente com o cookie do navegador que mantém a sessão autenticada, o Amazon Cognito os redireciona para a página de login.

Efeito da habilitação de contas

Os usuários podem fazer login imediatamente nas contas após você habilitá-las. As contas de usuário são habilitadas por padrão. Os atributos e senhas dos usuários permanecem os mesmos de antes da desabilitação da conta. Os tokens que sua aplicação revogou, independentemente de você ter desabilitado a conta do usuário ou revogado separadamente o token de atualização, permanecem inválidos depois que você habilita a conta de usuário que possuía o token.

Delete a user account (console)
Como excluir uma conta de usuário
  1. Acesse o console do Amazon Cognito. Se solicitado, insira suas credenciais da AWS.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Clique no menu Usuários e marque o botão de seleção ao lado do nome de usuário de um usuário na lista.

  5. Escolha Excluir.

  6. Selecione Desabilitar acesso do usuário.

  7. Escolha Excluir.

Delete a user account (API)

Os usuários podem excluir suas contas com a operação de API DeleteUser autorizada pelo token de acesso de autoatendimento. Veja a seguir um exemplo de corpo da solicitação DeleteUser.

{ "AccessToken": "eyJra456defEXAMPLE" }

Os administradores podem excluir contas de usuário com a operação de API AdminDeleteUser autorizada pelo IAM. Veja a seguir um exemplo de corpo da solicitação AdminDeleteUser.

{ "Username": "testuser", "UserPoolId": "us-west-2_EXAMPLE" }
Disable a user account (console)
Como desabilitar uma conta de usuário
  1. Acesse o console do Amazon Cognito. Se solicitado, insira suas credenciais da AWS.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Clique no menu Usuários e escolha o nome de usuário de um usuário na lista.

  5. Na página de detalhes do usuário, selecione Ações e Desabilitar acesso do usuário.

  6. Na caixa de diálogo criada, clique em Desabilitar.

Disable a user account (API)

Os administradores podem desabilitar contas de usuário com a operação de API AdminDisableUser autorizada pelo IAM. Veja a seguir um exemplo de corpo da solicitação AdminDisableUser.

{ "Username": "testuser", "UserPoolId": "us-west-2_EXAMPLE" }
Enable a user account (console)
Como habilitar uma conta de usuário
  1. Acesse o console do Amazon Cognito. Se solicitado, insira suas credenciais da AWS.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Clique no menu Usuários e escolha o nome de usuário de um usuário na lista.

  5. Na página de detalhes do usuário, selecione Ações e Habilitar acesso do usuário.

  6. Na caixa de diálogo criada, clique em Habilitar.

Enable a user account (API)

Os administradores podem habilitar contas de usuário com a operação de API AdminEnableUser autorizada pelo IAM. Veja a seguir um exemplo de corpo da solicitação AdminEnableUser.

{ "Username": "testuser", "UserPoolId": "us-west-2_EXAMPLE" }

Como pesquisar atributos de usuários

Se você já tiver criado um grupo de usuários, poderá pesquisar no painel Users (Usuários) no Console de gerenciamento da AWS. Você também pode usar a API ListUsers do Amazon Cognito, que aceita um parâmetro Filter (Filtro).

Você pode pesquisar qualquer um dos seguintes atributos padrão: Atributos personalizados não podem ser pesquisados.

  • username (diferencia maiúsculas de minúsculas)

  • email

  • phone_number

  • nome

  • given_name

  • family_name

  • preferred_username

  • cognito: user_status (chamado Status no console) (diferencia maiúsculas de minúsculas)

  • status (chamado Enabled (Habilitado) no console) (diferencia maiúsculas de minúsculas)

  • sub

nota

Você também pode listar usuários usando um filtro no lado do cliente. O filtro no lado do servidor não encontra correspondência com mais de um atributo. Para pesquisa avançada, use um filtro no lado do cliente com o parâmetro --query da ação list-users na AWS Command Line Interface. Quando você usa um filtro no lado do cliente, ListUsers retorna uma lista paginada de zero ou mais usuários. Você pode receber várias páginas consecutivas com zero resultados. Repita a consulta com cada token de paginação retornado até que você receba um valor de token de paginação nulo, em seguida, revise o resultado combinado.

Para mais informações sobre filtragem no lado do servidor e no lado do cliente, consulte Filtrar resultados da AWS CLI no Guia do usuário da AWS Command Line Interface.

Como pesquisar usuários usando o Console de gerenciamento da AWS

Se você já tiver criado um grupo de usuários, poderá pesquisar no painel Users (Usuários) no Console de gerenciamento da AWS.

Console de gerenciamento da AWSPesquisas do são sempre pesquisas de prefixo ("começa com").

Para pesquisar um usuário no console do Amazon Cognito
  1. Acesse o console do Amazon Cognito. Podem ser solicitadas suas credenciais do AWS.

  2. Escolha User Pools (Grupos de usuários).

  3. Escolha um grupo de usuários existente da lista.

  4. Clique no menu Usuários e digite o nome de usuário no campo de pesquisa. Observe que alguns valores de atributo diferenciam maiúsculas de minúsculas (por exemplo, Username).

    Você também pode encontrar usuários ajustando o filtro de pesquisa para restringir o escopo para outras propriedades do usuário, como Email (E-mail), Phone number (Número de telefone) ou Last name (Sobrenome).

Pesquisar usuários usando o API ListUsers

Para pesquisar usuários da sua aplicação, use a API ListUsers do Amazon Cognito. Esta API usa os seguintes parâmetros:

  • AttributesToGet: uma matriz de strings, onde cada string é o nome de um atributo de usuário a ser retornados para cada usuário nos resultados da pesquisa. Para recuperar todos os atributos, não inclua o parâmetro AttributesToGet nem a solicitação AttributesToGet com um valor da string literal null.

  • Filter: uma string de filtro do formulário "AttributeName Filter-Type "AttributeValue"". Aspas dentro da string de filtro devem ser evitadas usando o caractere de barra invertida (\). Por exemplo, "family_name = \"Reddy\"". Se a string de filtro estiver vazia, ListUsers retorna todos os usuários no grupo de usuários.

    • AttributeName: o nome do atributo a ser pesquisado. Você só pode pesquisar um atributo por vez.

      nota

      Você só pode pesquisar atributos padrão. Atributos personalizados não podem ser pesquisados. Isso é porque somente atributos indexados são pesquisáveis, e atributos personalizados não podem ser indexados.

    • Filter-Type: para obter uma correspondência exata, use =, por exemplo, given_name = "Jon". Para uma correspondência de prefixo ("começa com"), use ^=, por exemplo, given_name ^= "Jon".

    • AttributeValue: o valor de atributo que deve ser correspondido por cada usuário.

  • Limit: o número máximo de usuários a serem retornados.

  • PaginationToken: um token para obter mais resultados de uma pesquisa anterior. O Amazon Cognito encerra a validade do token de paginação após uma hora.

  • UserPoolId: a ID de grupo de usuários para o grupo de usuários na qual a pesquisa deve ser realizada.

Todas as pesquisas diferenciam maiúsculas de minúsculas. Os resultados da pesquisa são classificados pelo atributo nomeado pela string AttributeName, em ordem ascendente.

Exemplos de uso da API ListUsers

O exemplo a seguir retorna todos os usuários e inclui todos os atributos.

{ "AttributesToGet": null, "Filter": "", "Limit": 10, "UserPoolId": "us-east-1_samplepool" }

O exemplo a seguir retorna todos os usuários cujos números de telefone começam com "+1312" e inclui todos os atributos.

{ "AttributesToGet": null, "Filter": "phone_number ^= \"+1312\"", "Limit": 10, "UserPoolId": "us-east-1_samplepool" }

O exemplo a seguir retorna os primeiros 10 usuários que têm "Reddy" como sobrenome. Para cada usuário, os resultados da pesquisa incluem nome do usuário, número de telefone e endereço de e-mail. Se houver mais de 10 usuários correspondentes no grupo de usuários, a resposta incluirá um token de paginação.

{ "AttributesToGet": [ "given_name", "phone_number", "email" ], "Filter": "family_name = \"Reddy\"", "Limit": 10, "UserPoolId": "us-east-1_samplepool" }

Se o exemplo anterior retornar um token de paginação, o exemplo a seguir retornará os próximos 10 usuários que correspondam à mesma string de filtro.

{ "AttributesToGet": [ "given_name", "phone_number", "email" ], "Filter": "family_name = \"Reddy\"", "Limit": 10, "PaginationToken": "pagination_token_from_previous_search", "UserPoolId": "us-east-1_samplepool" }