Verificação de email para MFA
O Logto oferece funcionalidade de autenticação multifatorial baseada em email (MFA) que aumenta a segurança da conta enviando códigos de verificação únicos para os endereços de email registrados dos usuários. O email MFA serve como um segundo fator de autenticação e pode ser combinado com outros fatores de MFA (como TOTP, passkeys, códigos de backup) para fornecer aos usuários opções flexíveis de autenticação em dois fatores.
Conceitos
A verificação de email é um dos métodos de MFA mais universalmente acessíveis. Ela aproveita a ampla disponibilidade de contas de email para entregar códigos de verificação temporários e únicos diretamente nas caixas de entrada dos usuários. Diferente de autenticadores baseados em aplicativo, que exigem instalação de software adicional, o email MFA utiliza a infraestrutura de email já existente, acessível praticamente a todos os usuários da internet por navegadores, clientes de email ou aplicativos móveis. Isso o torna imediatamente disponível para os usuários sem necessidade de hardware especial ou configuração adicional além de possuir uma conta de email.
Configurar verificação de email para MFA
Passo 1: Configurar conector de email e templates
-
Navegue até Console > Conectores > Conectores de Email e SMS
-
Selecione um conector de email apropriado (SendGrid, Mailgun, etc.)
-
Configure os parâmetros de conexão.
-
Configure o template de email para MFA com os tipos de uso dedicados:
MfaVerification
usageType para verificação de MFA.BindMFA
usageType para vinculação de MFA.- Dica: Serviço de Email Logto fornece templates de email prontos.
-
Consulte Conectores de email para instruções de configuração específicas do provedor.
Passo 2: Ativar email para MFA
- Navegue até Console > Autenticação multifatorial
- Ative o fator "Código de verificação por email". Recomenda-se usar o email MFA em combinação com outros fatores de MFA (TOTP, passkeys, SMS, códigos de backup) para reduzir a dependência de um único fator.
- Configure sua política de MFA preferida (obrigatória vs. opcional)
- Salve as alterações de configuração
-
Limitação do método de login: Códigos de verificação por email não podem ser usados simultaneamente como método de login (1FA) e como fator de MFA (2FA). Escolha um fluxo de autenticação por email por implementação.
-
Compatibilidade com método de cadastro: Códigos de verificação por email podem ser usados simultaneamente como método de cadastro e MFA. O Logto irá otimizar o fluxo de registro do usuário final com base na política de MFA selecionada para evitar exigir verificação de email duas vezes para o mesmo endereço.
-
Compatibilidade com recuperação de senha: Embora códigos de verificação por email possam ser usados simultaneamente para Esqueci minha senha e MFA, essa combinação não é recomendada. Essa configuração reduz a eficácia da segurança do MFA, pois os usuários poderiam potencialmente contornar o MFA usando a verificação de email de recuperação de senha para redefinir a senha, depois usar a nova senha para autenticação primária (1FA) seguida do mesmo método de email para verificação MFA.
Fluxos de configuração do email MFA
O prompt de configuração do MFA pode aparecer durante o registro do usuário ou após o login, dependendo da sua política de MFA configurada. Os usuários também podem ativar o email MFA em sua página de configurações da conta.
O fluxo de configuração do email MFA é afetado pelos seguintes fatores:
- Número de fatores primários de MFA: Se houver múltiplos fatores primários, o usuário deve escolher um para configurar. Fatores primários são métodos de MFA diferentes de códigos de backup.
- Códigos de backup ativados: Quando ativados, os códigos de backup são gerados automaticamente após a configuração do fator primário de MFA; o usuário é solicitado a salvá-los.
- Configuração do identificador de cadastro: Se o endereço de email foi usado como identificador de cadastro e o usuário já o verificou com um código de email durante o registro, o sistema irá automaticamente vincular esse email como fator de MFA e nenhuma verificação adicional será necessária. Se existirem outros fatores primários, a interface exibirá a opção "Adicionar outra verificação em 2 etapas" (o usuário pode pular), indicando claramente que o MFA está ativado.
- Dados de usuário existentes: Quando um usuário existente configura o MFA após o login, ele deve primeiro concluir a autenticação primária e então prosseguir com a configuração do MFA. Se a conta já contiver um endereço de email primário verificado, a configuração se comporta da mesma forma que o caso do identificador de cadastro acima.
Abaixo estão três cenários comuns de vinculação de email MFA.
Cenário 1: Endereço de email usado apenas para MFA (Fluxo típico)
Quando o endereço de email não é um dos identificadores de cadastro e é usado apenas para MFA, siga a sequência padrão de configuração:
- Se houver apenas um fator de email MFA, exiba diretamente a interface de configuração desse fator.
- Se houver múltiplos fatores primários de MFA, exiba uma página de lista "Configurar MFA" e permita que o usuário escolha qual fator configurar.
Exemplos:
Cadastro: Número de telefone + Código de verificação SMS + Senha
| MFA: Código de verificação por email + Códigos de backup
Número de telefone + Código de verificação SMS + Senha
| MFA: Código de verificação por email + Códigos de backup

Cadastro: Número de telefone + Código de verificação SMS + Senha
| MFA: Código de verificação por email + Passkeys + OTP de aplicativo autenticador + Códigos de backup
Número de telefone + Código de verificação SMS + Senha
| MFA: Código de verificação por email + Passkeys + OTP de aplicativo autenticador + Códigos de backup

Cenário 2: Email verificado como identificador de cadastro
Se o endereço de email for o identificador de cadastro e o usuário já o tiver verificado com um código de email durante o registro, o sistema irá vincular automaticamente esse email como fator de MFA — nenhuma verificação adicional é necessária.
Exemplos:
Cadastro: Endereço de email + Código de verificação por email + Senha
| MFA: Código de verificação por email + Códigos de backup
Endereço de email + Código de verificação por email + Senha
| MFA: Código de verificação por email + Códigos de backup

Cenário 3: Email verificado mas múltiplos fatores primários disponíveis
Se o endereço de email foi verificado no cadastro (como identificador de cadastro), mas a conta possui múltiplos fatores primários de MFA (por exemplo, email mais passkeys ou aplicativos autenticadores), a interface irá solicitar ao usuário "Adicionar outra verificação em 2 etapas". O usuário pode optar por adicionar outro fator ou pular; o prompt também comunica que o MFA já está ativado.
Exemplos:
Cadastro: Endereço de email + Código de verificação por email + Senha
| MFA: Código de verificação por email + Passkeys + OTP de aplicativo autenticador + Códigos de backup
Endereço de email + Código de verificação por email + Senha
| MFA: Código de verificação por email + Passkeys + OTP de aplicativo autenticador + Códigos de backup

Fluxos de verificação do email MFA
Quando um usuário com email MFA ativado faz login, após concluir com sucesso a autenticação primária (1FA), ele será solicitado a verificar sua identidade usando o código de verificação por email como segundo fator de autenticação (2FA).
Se houver múltiplos fatores de MFA disponíveis, os usuários podem selecionar entre os fatores configurados. O sistema determina qual fator de MFA solicitar primeiro com base na ordem de prioridade especificada em Configurar MFA.
Exemplos:
Login: Número de telefone + Senha
| MFA: Código de verificação por email (última vez usado) / OTP de aplicativo autenticador / Códigos de backup
Número de telefone + Senha
| MFA: Código de verificação por email (última vez usado) / OTP de aplicativo autenticador / Códigos de backup

Tratamento de erros
-
Endereço de email não vinculado
- Código de erro:
session.mfa.mfa_factor_not_enabled
- Tratamento: Orientar o usuário a vincular o endereço de email primeiro
- Código de erro:
-
Código de verificação incorreto
- Código de erro:
verification_code.code_mismatch
- Tratamento: Solicitar que o usuário digite novamente, limitar tentativas
- Código de erro:
-
Código de verificação expirado
- Código de erro:
verification_code.expired
- Tratamento: Solicitar que o usuário solicite um novo código de verificação
- Código de erro:
-
Limite de envio excedido
- Código de erro:
connector.rate_limit_exceeded
- Tratamento: Exibir tempo de espera, limitar reenvio
- Código de erro: