Passkeys
Deixe as pessoas entrarem com a digital, o rosto ou o bloqueio de tela do dispositivo, como primeira etapa ou como segundo fator resistente a phishing.
Uma passkey é uma credencial WebAuthn: um par de chaves cuja metade privada nunca sai do dispositivo ou do gerenciador de senhas da pessoa. Entrar significa desbloquear o dispositivo do jeito que ela já faz — digital, rosto, PIN ou bloqueio de tela —, e o navegador só oferece a passkey ao site para o qual ela foi criada, então uma página de login falsa não tem nada para coletar.
No Authio, a passkey é uma das etapas do login que um client pode pedir. Ela pode substituir a senha por completo ou vir depois dela como segundo fator, e os tokens que a sua aplicação recebe dizem qual dos dois aconteceu.
Como as passkeys funcionam no Authio
- As passkeys são criadas e usadas no login hospedado, então ficam vinculadas ao domínio em que ele roda e valem para todo client do realm que oferece a etapa
passkey. - O cadastro pede uma credencial descobrível e a verificação do usuário, para que a pessoa possa entrar sem digitar o nome de usuário. Nenhuma atestação é pedida: o Authio não pede ao dispositivo que identifique o fabricante.
- Passkeys sincronizadas (iCloud Keychain, Google Password Manager, 1Password e outras) e passkeys presas ao dispositivo (Windows Hello, chaves de segurança) funcionam.
- Um dispositivo que já tem uma passkey da conta não consegue cadastrar uma segunda para ela.
- A conta passa pelas mesmas verificações do login por senha: realm e client ativos, bloqueio, suspensão, confirmação de e-mail e aprovação de endereço.
Primeira etapa ou segundo fator
| Usada como | O que é conferido | O que a sessão registra |
|---|---|---|
| A primeira etapa, no lugar da senha | O dispositivo precisa verificar a pessoa (biometria ou PIN). Uma passkey sem verificação é recusada aqui. | Dois fatores: swk e user, com acr 3. |
| Um segundo fator, depois da senha | A verificação é preferida, não exigida, então gerenciadores de senha que respondem sem ela são aceitos. Só contam as passkeys da conta cuja senha foi aceita. | pwd mais swk, e user quando o dispositivo verificou a pessoa. O acr é 3 com verificação e 2 sem. |
Um login por passkey continua seguindo as outras etapas do client: se o client também pede o código por e-mail, o código é pedido depois da passkey.
Ativar passkeys num client
Adicione a etapa de passkey
Em Clients, abra o client, escolha Editar e vá até Tela de login. Adicione a etapa
passkey: em primeiro lugar na lista para um login sem senha, depois deloginpara um segundo fator.Escolha a exigência e o cadastro
Os padrões, Preferencial e Oferecer, constroem a base aos poucos: uma conta sem passkey entra com a senha e recebe a oferta de cadastrar uma; daí em diante a passkey é pedida toda vez. Veja exigência e cadastro para os outros valores.
Salve
A etapa vale a partir do próximo login. As páginas da conta do client passam a listar as passkeys ao mesmo tempo.
| Você quer | Etapas, em ordem | Política |
|---|---|---|
| Senha, com passkeys entrando aos poucos | login, passkey | Preferencial e Oferecer. |
| Senha mais passkey para todos | login, passkey | Obrigatória e Exigir. |
| Passkey primeiro, senha como porta de entrada para quem é novo | passkey, login | Preferencial e Oferecer. |
| Só passkey | passkey | Obrigatória e Nunca: as contas cadastram a passkey antes em outro lugar, por exemplo em outro client do realm que tenha a etapa login. |
passkey fecha também os endpoints de passkey daquele client, não só o botão. Num client só com passkey, ninguém entra até a etapa voltar ou outra etapa ser adicionada.Entrar com uma passkey
O que a pessoa vê depende de onde a etapa está:
- Como primeira etapa, a tela mostra Continuar com passkey. O navegador lista as passkeys que tem para o site; não é preciso informar o usuário. Se o client também tem a etapa
login, um link oferece Ainda não tenho uma passkey — entrar com a minha senha. - No campo de usuário, quando o client tem
loginepasskey, o preenchimento automático do navegador oferece as passkeys salvas ao lado das senhas salvas (a interface condicional do WebAuthn). Escolher uma faz o login sem digitar nada. - Depois da senha, o navegador pede uma das passkeys daquela conta. A passkey de outra pessoa é recusada como desconhecida.
Um navegador que não consegue usar passkeys avisa na própria tela e indica outro caminho para entrar.
Cadastrar uma passkey
A pessoa cadastra uma passkey em dois lugares:
- Durante o login, quando o cadastro da etapa é Oferecer ou Exigir: depois de entrar de outro jeito, a tela mostra Configurar uma passkey, um campo opcional para dar nome ao dispositivo e Registrar este dispositivo. Com Oferecer, Agora não pula a oferta. Uma conta que já tem passkey em outro lugar vê Passkey pronta e pode Registrar também este dispositivo.
- Pelas páginas da conta, na aba Passkeys: dê nome ao dispositivo e escolha Registrar este dispositivo. Veja Autoatendimento da conta.
Quando a passkey não está neste dispositivo
Quando a passkey é devida como segundo fator, a tela oferece Minha passkey não está neste dispositivo — enviar um código para mim. O Authio envia um código de uso único ao e-mail da conta, e o código responde pela etapa de passkey, mesmo num client cujas etapas não incluem o código por e-mail. Assim, um client que pede passkey nunca tranca para fora quem perdeu o dispositivo.
A sessão registra só o que foi de fato usado — pwd, otp e mfa, com acr 2 —, então uma aplicação que precisa do nível resistente a phishing percebe que não o recebeu e pode pedir de novo mais tarde.
Um dispositivo perdido ou aposentado também deve perder a passkey. A pessoa a remove na aba Passkeys das páginas da conta; um administrador a remove pelo console (veja abaixo).
Gerenciar passkeys
| Onde | Quem | O que mostra e faz |
|---|---|---|
| Páginas da conta, aba Passkeys | A própria pessoa | O nome de cada passkey, o tipo de dispositivo (este dispositivo, celular ou tablet, chave de segurança USB, NFC ou Bluetooth, smart card), se está sincronizada, quando foi cadastrada e usada pela última vez. Registrar este dispositivo ou remover uma passkey. A aba só lista passkeys quando o client oferece a etapa passkey. |
| Usuários, aba Credenciais do usuário | Um administrador | O modelo do autenticador identificado pelo AAGUID (Windows Hello, iCloud Keychain, YubiKey e outros), transportes, situação de backup e último uso, com destaque para as passkeys que se perdem junto com o dispositivo. Remover uma passkey. |
O que a sua aplicação recebe
O ID token traz amr (os métodos usados) e acr (o nível atingido). Leia os dois para decidir se um login é forte o bastante para o que a pessoa vai fazer:
| Login | amr | acr |
|---|---|---|
| Só passkey, verificada | swk, user, mfa | 3 |
| Senha e depois passkey verificada | pwd, swk, user, mfa | 3 |
| Senha e depois passkey sem verificação | pwd, swk, mfa | 2 |
| Senha e depois o código de recuperação | pwd, otp, mfa | 2 |
Para pedir um login resistente a phishing, envie acr_values=3. O pedido é de melhor esforço: veja step-up.