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á.
Todos os usuários que fazem login em um grupo de usuários, até mesmo usuários federados, têm senhas atribuídas aos seus perfis de usuário. Usuários locais e usuários vinculados devem inserir uma senha ao fazerem login. Os usuários federados não usam senhas de grupos de usuários, mas fazem login usando o provedor de identidades (IdP). Você pode permitir que os usuários redefinam suas próprias senhas, redefinam ou alterem senhas como administrador e definam políticas para complexidade e histórico de senhas.
O Amazon Cognito não armazena senhas de usuários em texto simples. Em vez disso, ele armazena um hash da senha de cada usuário com um salt específico do usuário. Por esse motivo, você não pode recuperar senhas existentes dos perfis de usuário em seus grupos de usuários. Como prática recomendada, não armazene senhas de usuário em texto simples em nenhum lugar. Redefina as senhas quando os usuários as esquecerem.
Redefinição e recuperação de senha
Os usuários esquecem suas senhas. Você pode permitir que eles mesmos as redefinam, ou exigir que um administrador redefina a senha para eles. Os grupos de usuários do Amazon Cognito têm opções para os dois modelos. Esta parte do guia aborda as configurações do grupo de usuários e as operações de API para redefinição de senha.
A operação ForgotPasswordda API e a opção de login gerenciado Esqueceu sua senha? enviam aos usuários um código que, quando eles confirmam que têm o código correto, lhes dá a oportunidade de definir uma nova senha com ConfirmForgotPassword. Esse é o modelo de recuperação de senha por autoatendimento.
Recuperação de usuários não verificados
Você pode enviar mensagens de recuperação para usuários que verificaram seu endereço de e-mail ou número de telefone. Se eles não tiverem um e-mail ou telefone de recuperação confirmado, um administrador do grupo de usuários poderá marcar seu endereço de e-mail ou número de telefone como verificados. Edite os atributos de usuário do usuário no console do Amazon Cognito e marque a caixa de seleção ao lado de Marcar número de telefone como verificado ou Marcar endereço de e-mail como verificado. Você também pode phone_number_verified
definir email_verified
ou como verdadeiro em uma AdminUpdateUserAttributessolicitação. Para novos usuários, a operação da ResendConfirmationCodeAPI envia um novo código para seu endereço de e-mail ou número de telefone e eles podem concluir a confirmação e a verificação por autoatendimento.
Redefinir senhas como administrador
As operações AdminSetUserPassworde a AdminResetUserPasswordAPI são os métodos de redefinição de senha iniciados pelo administrador. AdminSetUserPassword
define uma senha temporária ou permanente e AdminResetUserPassword
envia aos usuários um código de redefinição de senha da mesma forma que. ForgotPassword
Configurar redefinição e recuperação de senha
O Amazon Cognito seleciona automaticamente suas opções de recuperação de conta a partir dos atributos e opções de login necessários que você escolhe ao criar um grupo de usuários no console. Você pode modificar essas configurações padrão.
O método de MFA preferido de um usuário influencia os métodos que ele pode usar para recuperar a senha. Os usuários cujo MFA preferencial é por mensagem de e-mail não podem receber um código de redefinição de senha por e-mail. Os usuários cujo MFA preferencial é por mensagem SMS não podem receber um código de redefinição de senha por SMS.
Suas configurações de recuperação de senha devem fornecer uma opção alternativa quando os usuários não estão qualificados para usar o método de redefinição de senha de sua preferência. Por exemplo, seus mecanismos de recuperação podem ter o e-mail como prioridade e o MFA do e-mail pode ser opcional no seu grupo de usuários. Nesse caso, adicione a recuperação da conta de mensagens SMS como uma segunda opção ou use operações administrativas da API para redefinir as senhas desses usuários.
nota
Os usuários não podem receber códigos de redefinição de senha e MFA no mesmo endereço de e-mail ou número de telefone. Se eles usarem senhas de uso único (OTPs) de mensagens de e-mail para MFA, deverão usar mensagens SMS para recuperação da conta. Se OTPs usarem mensagens SMS para MFA, deverão usar mensagens de e-mail para recuperação da conta. Em grupos de usuários com MFA, os usuários podem não conseguir concluir a recuperação de senha de autoatendimento se tiverem atributos para o endereço de e-mail, mas sem número de telefone, ou número de telefone, mas sem endereço de e-mail.
Para evitar o estado em que os usuários não possam redefinir suas senhas em grupos de usuários com essa configuração, defina phone_number
os atributos email e conforme necessário. Como alternativa, você pode configurar processos que sempre coletem e definam esses atributos quando os usuários se inscrevem ou quando seus administradores criam perfis de usuário. Quando os usuários têm os dois atributos, o Amazon Cognito envia automaticamente códigos de redefinição de senha para o destino que não é o fator de MFA do usuário.
O procedimento a seguir configura a recuperação de conta de autoatendimento em um grupo de usuários.
O AccountRecoverySetting
parâmetro é o parâmetro do grupo de usuários que define os métodos que os usuários podem usar para recuperar sua senha em solicitações de ForgotPasswordAPI ou quando selecionam Esqueceu a senha? no login gerenciado. ForgotPassword
envia um código de recuperação para um e-mail verificado ou um número de telefone verificado. O código de recuperação é válido por uma hora. Quando você especifica uma AccountRecoverySetting para o grupo de usuários, o Amazon Cognito escolhe o destino de entrega de código com base na prioridade definida por você.
Quando você define AccountRecoverySetting
e um usuário tem o MFA SMS configurado, o SMS não pode ser usado como um mecanismo de recuperação de conta. A prioridade dessa configuração é determinada com 1
a prioridade mais alta. O Amazon Cognito envia uma verificação para somente um dos métodos especificados. O exemplo a seguir AccountRecoverySetting
define os endereços de e-mail como o destino principal dos códigos de recuperação de conta, retornando à mensagem SMS se o usuário não tiver um atributo de endereço de e-mail.
"AccountRecoverySetting": {
"RecoveryMechanisms": [
{
"Name": "verified_email",
"Priority": 1
},
{
"Name": "verified_phone_number",
"Priority": 2
}
]
}
O valor admin_only
desativa a recuperação da conta de autoatendimento, exigindo que os usuários entrem em contato com o administrador para redefinir a senha. Você não pode usar admin_only
com nenhum outro mecanismo de recuperação de conta. O seguinte e
"AccountRecoverySetting": {
"RecoveryMechanisms": [
{
"Name": "admin_only",
"Priority": 1
}
]
}
Se você não especificarAccountRecoverySetting
, o Amazon Cognito enviará primeiro o código de recuperação para um número de telefone verificado e para um endereço de e-mail verificado se os usuários não tiverem um atributo de número de telefone.
Para obter mais informações sobre a AccountRecoverySetting
, consulte CreateUserPool e UpdateUserPool.
Comportamento para esquecimento da senha
Em uma determinada hora, permitimos entre 5 e 20 tentativas para que um usuário solicite ou insira um código de redefinição de senha como parte das ações e ações de esquecimento da senha. confirm-forgot-password O valor exato depende dos parâmetros de risco associados às solicitações. Observe que esse comportamento está sujeito a alterações.
Como adicionar requisitos de senha do grupo de usuários
Senhas fortes e complexas são a prática recomendada de segurança para seu grupo de usuários. Especialmente em aplicações abertas à Internet, senhas fracas podem expor as credenciais dos usuários a sistemas que adivinham senhas e tentam acessar seus dados. Quanto mais complexa for uma senha, mais difícil será adivinhá-la. O Amazon Cognito tem ferramentas adicionais para administradores preocupados com a segurança, como recursos avançados de segurança e AWS WAF web ACLs, mas sua política de senha é um elemento central da segurança do seu diretório de usuários.
As senhas para usuários locais nos grupos de usuários do Amazon Cognito não expiram automaticamente. Como prática recomendada, registre a hora, a data e os metadados das redefinições de senha do usuário em um sistema externo. Com um log externo de tempo da senha, sua aplicação ou um acionador do Lambda pode pesquisar o tempo da senha de um usuário e exigir uma redefinição após determinado período.
Você pode configurar o grupo de usuários para exigir uma complexidade mínima de senha que esteja de acordo com seus padrões de segurança. Senhas complexas têm no mínimo oito caracteres. Eles também incluem uma combinação de caracteres maiúsculos, numéricos e especiais.
Com recursos avançados de segurança, é possível definir uma política de reutilização de senha. Você pode impedir que um usuário redefina sua senha para uma nova senha que corresponda à senha atual ou a qualquer uma das 23 senhas anteriores adicionais, totalizando no máximo 24.
Como definir uma política do grupo de usuários
-
Crie um grupo de usuários e navegue até a etapa Configurar requisitos de segurança ou acesse um grupo de usuários existente e navegue até o menu Métodos de autenticação.
-
Navegue até Política de senha.
-
Escolha um Modo de política de senha. Os Padrões do Cognito configuram o grupo de usuários com as configurações mínimas recomendadas. Também é possível escolher uma política de senha Personalizada.
-
Defina um Tamanho mínimo de senha. Todos os usuários devem se cadastrar ou serem criados com uma senha com tamanho maior ou igual a esse valor. É possível definir esse valor mínimo de até 99, mas os usuários podem definir senhas com até 256 caracteres.
-
Configure as regras de complexidade de senhas em Requisitos de senha. Escolha os tipos de caracteres: números, caracteres especiais, letras maiúsculas e minúsculas, dos quais você deseja exigir pelo menos um na senha de cada usuário.
Você pode exigir que as senhas contenham pelo menos um dos seguintes caracteres: Depois que o Amazon Cognito verificar se as senhas contêm os caracteres mínimos necessários, as senhas de seus usuários podem conter caracteres adicionais de qualquer tipo até atingir o tamanho máximo.
-
Letras maiúsculas e minúsculas do latim básico
-
Números
-
Os caracteres especiais a seguir.
^ $ * . [ ] { } ( ) ? " ! @ # % & / \ , > < ' : ; | _ ~ ` = + -
-
Caracteres de espaço não iniciais e não finais.
-
-
Defina um valor para Senhas temporárias definidas por administradores expiram em. Após esse período, um novo usuário criado no console do Amazon Cognito com
AdminCreateUser
não poderá fazer login e definir uma nova senha. Depois de fazerem login com a senha temporária, as contas de usuário nunca expirarão. Para atualizar a duração da senha na API de grupos de usuários do Amazon Cognito, defina um valor para TemporaryPasswordValidityDays a sua solicitação CreateUserPoolou para a UpdateUserPoolAPI. -
Defina um valor para Impedir o uso de senhas anteriores, se disponível. Para usar esse recurso, ative recursos avançados de segurança em seu grupo de usuários. O valor desse parâmetro é o número de senhas anteriores que uma nova senha é impedida de corresponder quando o usuário redefine a senha.
Para redefinir o acesso de uma conta de usuário expirada, siga um destes procedimentos:
-
Exclua o perfil de usuário e crie outro.
-
Defina uma nova senha permanente em uma solicitação de AdminSetUserPasswordAPI.
-
Gere um novo código de confirmação em uma solicitação de AdminResetUserPasswordAPI.