As senhas são o elo mais fraco na segurança das contas. Podem ser alvo de phishing, vazadas, reutilizadas ou esquecidas. Por isso, adicionamos suporte para Passkeys WebAuthn - um método de autenticação sem senha resistente a phishing, mais seguro e mais conveniente.
O que são Passkeys?
Passkeys são credenciais criptográficas armazenadas no seu dispositivo (celular, notebook, chave de segurança) que substituem as senhas para autenticação. Utilizam o padrão WebAuthn (parte do FIDO2) e oferecem várias vantagens:
- Resistentes a phishing - As Passkeys estão vinculadas ao domínio do site, por isso não podem ser usadas em sites falsos
- Sem segredos para vazar - Apenas a chave pública é armazenada no servidor
- Vinculadas ao dispositivo - A chave privada nunca sai do seu dispositivo
- Protegidas por biometria - Tipicamente protegidas por Face ID, Touch ID ou Windows Hello
- Sincronização entre dispositivos - As plataformas modernas sincronizam Passkeys entre dispositivos através de contas iCloud, Google ou Microsoft
Nossa implementação
Integramos o suporte para Passkeys WebAuthn na nossa pilha de autenticação django-allauth existente, fornecendo endpoints API tanto para web quanto para dispositivos móveis.
Fluxo de registro
Quando um usuário registra uma nova Passkey, o fluxo funciona assim:
- O cliente solicita opções de registro ao servidor
- O servidor gera um desafio com informações do usuário e da relying party
- A API WebAuthn do navegador solicita ao usuário (biometria ou chave de segurança)
- O cliente envia a credencial de volta ao servidor
- O servidor verifica e armazena a chave pública
| |
Fluxo de autenticação
Para autenticação de dois fatores usando uma Passkey:
- O usuário completa a autenticação primária (nome de usuário/senha ou login social)
- O servidor retorna um desafio para verificação WebAuthn
- O navegador solicita a Passkey (toque biométrico)
- A credencial é verificada contra a chave pública armazenada
- O usuário está totalmente autenticado
| |
Gerenciamento de Passkeys
Os usuários podem gerenciar suas Passkeys registradas:
- Listar todas as Passkeys com data de registro e último uso
- Renomear Passkeys para identificação mais fácil (ex., “iPhone”, “MacBook”)
- Excluir Passkeys (com proteção contra remoção do último autenticador)
| |
Endpoints da API
Nossa REST API fornece suporte completo para WebAuthn para o aplicativo móvel:
| Endpoint | Método | Descrição |
|---|---|---|
/api/webauthn/register/options/ | GET | Obter desafio de registro |
/api/webauthn/register/complete/ | POST | Completar registro |
/api/webauthn/authenticate/options/ | GET | Obter desafio de autenticação |
/api/webauthn/verify/ | POST | Verificar credencial para 2FA |
/api/webauthn/ | GET | Listar Passkeys registradas |
/api/webauthn/<id>/ | PATCH | Renomear uma Passkey |
/api/webauthn/<id>/ | DELETE | Excluir uma Passkey |
Considerações de segurança
Códigos de recuperação
Quando um usuário registra seu primeiro autenticador (Passkey ou TOTP), geramos automaticamente códigos de recuperação. Esses códigos de uso único podem ser utilizados se todos os outros métodos de autenticação ficarem indisponíveis:
| |
Prevenção de bloqueio
Os usuários não podem excluir sua última Passkey se isso os deixar sem qualquer método de autenticação de dois fatores:
| |
Monitoramento
Rastreamos o uso de Passkeys através de métricas Datadog para monitoramento de segurança:
| |
Suporte de navegadores
WebAuthn é suportado em todos os navegadores modernos:
- Chrome 67+
- Firefox 60+
- Safari 13+
- Edge 79+
- Chrome móvel, Safari, Firefox
Para navegadores mais antigos, os usuários podem continuar usando TOTP (aplicativos de autenticação) ou códigos de recuperação.
A experiência do usuário
Adicionar uma Passkey leva apenas segundos:
- Vá em Configurações → Segurança → Autenticação de dois fatores
- Clique em Adicionar Passkey
- Nomeie seu dispositivo (ex., “iPhone 15”)
- Autentique-se com Face ID / Touch ID / Windows Hello
- Pronto! Sua Passkey está registrada
Os logins futuros requerem apenas uma confirmação biométrica - sem digitar senhas ou copiar códigos de aplicativos de autenticação.
Por que escolhemos Passkeys
| Método | Risco de phishing | Experiência do usuário | Recuperação |
|---|---|---|---|
| Senhas | Alto | Ruim (esquecidas, fracas) | Reset por email |
| SMS 2FA | Médio (SIM swap) | Razoável | Número de telefone |
| Apps TOTP | Baixo | Entrada manual de código | Chaves de backup |
| Passkeys | Muito baixo | Excelente | Códigos de recuperação |
As Passkeys representam o futuro da autenticação. Já são suportadas pelas plataformas Apple, Google e Microsoft, tornando-as acessíveis a quase todos os nossos usuários.
Pronto para abandonar as senhas? Ative as Passkeys nas suas configurações de segurança!