View a markdown version of this page

Coisas a saber sobre a autenticação com grupos 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á.

Coisas a saber sobre a autenticação com grupos de usuários

Considere as informações a seguir no design do modelo de autenticação com grupos de usuários do Amazon Cognito.

Fluxos de autenticação no login gerenciado e na IU hospedada

O login gerenciado tem mais opções de autenticação do que a IU hospedada clássica. Por exemplo, os usuários podem fazer autenticação sem senha e com chave de acesso somente no login gerenciado.

Fluxos de autenticação personalizados disponíveis somente na autenticação AWS do SDK

Não é possível criar fluxos de autenticação personalizados, nem autenticação personalizada com acionadores do Lambda, usando o login gerenciado ou a IU hospedada clássica. A autenticação personalizada está disponível na autenticação com SDKs da AWS.

Login gerenciado para login do provedor de identidades (IdP) externo

Você não pode fazer login de usuários por meio de autenticação IdPs de terceiros com AWS SDKs. Você deve implementar o login gerenciado ou a interface de usuário hospedada clássica, redirecionar IdPs e processar o objeto de autenticação resultante com as bibliotecas do OIDC em seu aplicativo. Para obter mais informações sobre o login gerenciado, consulte Login gerenciado do grupo de usuários.

Efeito da autenticação sem senha em outros recursos do usuário

A ativação do login sem senha com senhas de uso único ou chaves de acesso no grupo de usuários e no cliente da aplicação afeta a criação e a migração de usuários. Quando o login sem senha está ativo:

  1. Os administradores podem criar usuários sem senhas. O modelo de mensagem de convite padrão é alterado para não incluir mais o espaço reservado para senha {###}. Para obter mais informações, consulte Como criar contas de usuário como administrador.

  2. Para SDK-based SignUpoperações, os usuários não precisam fornecer uma senha ao se inscreverem. O login gerenciado e a IU hospedada exigem uma senha na página de cadastro, mesmo que a autenticação sem senha seja permitida. Para obter mais informações, consulte Como cadastrar e confirmar contas de usuários.

  3. Os usuários importados de um arquivo CSV podem entrar imediatamente com opções sem senha, sem redefinição de senha, se seus atributos incluírem um endereço de e-mail ou número de telefone para uma opção de login sem senha disponível. Para obter mais informações, consulte Como importar usuários para grupos de usuários com base em um arquivo CSV.

  4. A autenticação sem senha não invoca o acionador do Lambda de migração de usuários.

  5. Os usuários que fazem login com um primeiro fator de senha de uso único (OTP) não podem adicionar um fator de autenticação multifator (MFA) à sessão. As chaves de acesso com verificação do usuário podem atender aos requisitos de MFA quando configuradas com. MULTI_FACTOR_WITH_USER_VERIFICATION

Os URLs de parte confiável da chave de acesso não podem estar na lista de sufixos públicos

Você pode usar nomes de domínio que você possui, como www.example.com, como o ID de parte confiável (RP) na configuração da chave de acesso. Essa configuração se destina a oferecer suporte a aplicações personalizadas executadas em domínios que você possui. A lista de sufixos públicos, ou PSL, contém domínios de alto nível protegidos. O Amazon Cognito retorna um erro quando você tenta definir o URL de RP como um domínio na PSL.

Duração do fluxo da sessão de autenticação

Dependendo dos recursos do seu grupo de usuários, você pode responder a vários desafios RespondToAuthChallenge antes InitiateAuth e antes que seu aplicativo recupere tokens do Amazon Cognito. O Amazon Cognito inclui uma string de sessão na resposta a cada solicitação. Para combinar suas solicitações de API em um fluxo de autenticação, inclua a string da sessão da resposta à solicitação anterior em cada solicitação subsequente. Por padrão, os usuários têm três minutos para concluir cada desafio antes que a string da sessão expire. Para ajustar esse período, altere o cliente da aplicação Authentication flow session duration (Duração da sessão do fluxo de autenticação). O procedimento a seguir descreve como alterar essa definição na configuração do cliente da aplicação.

nota

As configurações de duração da sessão do fluxo de autenticação se aplicam à autenticação com a API de grupos de usuários do Amazon Cognito. O login gerenciado define a duração da sessão em 3 minutos para autenticação multifatorial e 8 minutos para alteração forçada de senha durante o primeiro login do usuário final com senha temporária.

Amazon Cognito console
Para configurar a duração da sessão do fluxo de autenticação do cliente do aplicativo (Console de gerenciamento da AWS)
  1. Na guia App integration (Integração de aplicações) no grupo de usuários, selecione o nome do cliente da aplicação no contêiner App clients and analytics (Clientes e análise de aplicações).

  2. Selecione Editar no contêiner Informações do cliente da aplicação.

  3. Altere o valor de Duração da sessão de fluxo de autenticação para a duração de validade desejada, em minutos, para códigos de MFA por e-mail ou SMS. Isso também altera a quantidade de tempo que qualquer usuário tem para concluir qualquer desafio de autenticação no cliente da aplicação.

  4. Escolha Salvar alterações.

User pools API
Como configurar a duração da sessão do fluxo de autenticação do cliente da aplicação (API do Amazon Cognito)
  1. Prepare uma solicitação UpdateUserPoolClient com as configurações existentes de seu grupo de usuários usando uma solicitação DescribeUserPoolClient. A solicitação UpdateUserPoolClient deve incluir todas as propriedades existentes do cliente da aplicação.

  2. Altere o valor de AuthSessionValidity para a duração de validade desejada, em minutos, para códigos de MFA por SMS. Isso também altera a quantidade de tempo que qualquer usuário tem para concluir qualquer desafio de autenticação no cliente da aplicação.

Para obter mais informações sobre clientes de aplicação, consulte Application-specific configurações com clientes de aplicativos.

Comportamento de bloqueio em tentativas fracassadas de login

Depois de cinco tentativas fracassadas de login com a senha de um usuário, independentemente de serem solicitadas com operações não autenticadas ou de IAM-authorized API, o Amazon Cognito bloqueia seu usuário por um segundo. A duração do bloqueio dobra após cada tentativa adicional fracassada, até um máximo de aproximadamente 15 minutos.

As tentativas feitas durante um período de bloqueio geram uma exceção Password attempts exceeded e não afetam a duração dos períodos de bloqueio subsequentes. Para um número cumulativo de tentativas fracassadas de login n, sem incluir exceções Password attempts exceeded, o Amazon Cognito bloqueia o usuário por 2^(n-5) segundos. Para redefinir o bloqueio como o estado inicial n=0, o usuário deve fazer login com êxito após o término do período de bloqueio ou não iniciar nenhuma tentativa de login por 15 minutos consecutivos a qualquer momento após um bloqueio. Esse comportamento está sujeito a alterações. Esse comportamento não se aplica aos desafios personalizados, a menos que eles também realizem a autenticação baseada em senha.