O que é WebAuthn?
WebAuthn é a API padrão do W3C que permite a sites e aplicações autenticar usuários com chaves criptográficas em hardware (FIDO2) sem senha.
O que significa WebAuthn?
WebAuthn (Web Authentication API) é o padrão do W3C que define como navegadores e aplicações comunicam-se com autenticadores FIDO2 — tokens USB, biometria de dispositivo (Touch ID, Windows Hello) ou passkeys sincronizados. É a peça que torna login sem senha viável em larga escala na web.
Como WebAuthn funciona?
Quando o usuário se registra, o navegador pede ao autenticador para gerar um par de chaves único para aquele site (relying party). A chave pública é enviada ao servidor; a privada nunca sai do hardware. No login, o servidor envia um challenge, o navegador pede ao autenticador para assinar (após o usuário confirmar com biometria ou PIN), e devolve a assinatura. O servidor valida.
Por que WebAuthn é importante?
Senhas e MFA tradicional são vulneráveis a phishing. WebAuthn elimina essa classe inteira de ataque por design: a assinatura é vinculada ao domínio (origin binding), então sites falsos não conseguem extrair credenciais válidas. É hoje o caminho técnico recomendado para login passwordless.
WebAuthn, FIDO2 e Passkeys
- FIDO2: a especificação técnica completa.
- WebAuthn: a parte da API entre browser e servidor.
- CTAP2: a parte entre browser e autenticador externo.
- Passkeys: marca user-friendly de FIDO2 sincronizado em cloud (Apple, Google, Microsoft).
Exemplo prático de WebAuthn
Um usuário do portal AccessOne se registra com Touch ID no MacBook. Quando volta no dia seguinte, o navegador detecta o autenticador, pede a digital — em segundos está logado, sem senha. Se um phishing tentar imitar o portal em um domínio falso, o autenticador recusa porque a origin não bate com o registro original.
Adoção de WebAuthn
Todos os navegadores modernos (Chrome, Edge, Firefox, Safari) e plataformas (Windows, macOS, iOS, Android) suportam WebAuthn nativamente. Bibliotecas como SimpleWebAuthn (Node) e py_webauthn (Python) facilitam a implementação no servidor. Plataformas IAM (Entra ID, Okta, Auth0) já oferecem fluxo pronto.
Riscos e cuidados com WebAuthn
Recovery é o ponto crítico: se o usuário perde o autenticador único, fica fora. Soluções: registrar pelo menos 2 autenticadores por conta, manter recovery codes guardados off-band, e ter fluxo administrativo seguro para reativação. Passkeys sincronizados resolvem em parte, mas dependem da segurança da cloud do provedor.

