Dados pessoais + segurança da conta.
PortalUser configura nome, e-mail, senha. Ativa 2FA via app TOTP. Códigos de recuperação para situações sem celular.
Portal

Recursos do perfil
Nome de Exibição
Como aparece no header e em comunicações.
- No header
- Em comunicações
- Editável
E-mail Único
Login do portal. Trocar exige confirmação por e-mail (pendingEmail + token expira em 24h).
- Login do portal
- Confirmação obrigatória
- Token expira em 24h
Trocar Senha
Senha atual + nova senha + confirmação. Política de complexidade configurável. Hash bcrypt.
- Senha atual obrigatória
- Política configurável
- Hash bcrypt
2FA TOTP
Ativar mostra QR code para Google Authenticator, Authy, Microsoft Authenticator. Validação com código de 6 dígitos.
- QR code
- Google Auth, Authy, Microsoft Auth
- Códigos 6 dígitos, renovação 30s, offline
Códigos de Recuperação
10 códigos uso único gerados ao ativar 2FA. Para usar quando perdeu celular. Regeneráveis.
- 10 códigos uso único
- Quando perdeu celular
- Regeneráveis
Sessões Ativas
Lista dispositivos logados com timestamp + IP + user agent. Revogar individualmente.
- Dispositivos logados
- Timestamp + IP + UA
- Revogar individual
Failed Login Attempts
Trackeado em failedLoginAttempts. Após N tentativas, bloqueio temporário. Visível para o cliente como aviso de segurança.
- failedLoginAttempts
- Bloqueio temporário
- Aviso de segurança
Último Login
lastLoginAt exibido. Confirmação visual de atividade da própria conta.
- lastLoginAt
- Confirmação visual
- Atividade da conta
