Autenticação Windows (Hello e Browsers)

Pessoal, uso um desktop e, claro, não tem webcam.

Estava pensando em comprar uma Webcam compatível com Windows Hello, mas é extremamente caro. Então pensei: Hum, posso comprar aqueles leitores de digital que são mais baratos.

Claro que com a Webcam eu teria a comodidade de ter uma câmera também, coisa que não tenho agora.

Aliado a isso, gostaria também de usar esse leitor de digitais para autenticações em sites (uso o Edge Chromium). É possível usar esse recurso de autenticação no browser?

O que sugerem?

1 curtida

Sobre a questão da biometria, sei que o Google Chrome oferece suporte, então o Edge deve atender a função também, não teria sentido a Microsoft remover justamente um recurso que aproveita de uma função de seu próprio sistema.

No entanto, você o terá como forma de preencher dados de cartão de crédito, por exemplo. Para sites solicitarem a biometria, ao invés da digitação normal das senhas, precisariam os sites implementarem tal recurso, consumindo a API dos navegadores que oferecem esse suporte (Tal qual ocorre com os dispositivos móveis, onde meu app tem que chamar a API de biometria do Android).

Porém devido a baixa popularidade desse recurso em notebooks e PCs, desconheço sites que ofereçam essa possibilidade.

1 curtida

Ah, então cabe aos sites implementarem isso?

Até que faz sentido, por que no meu S9 eu autentico tudo pela digital mas ai é usado o Samsung Pass. Teria que ter algo do tipo para Windows, é isso?

Eu consigo logar no Windows por esse dispositivo por impressão digital?

Então, o Samsung Pass está armazenando a sua credencial e pedindo sua digital para preencher, basicamente um cofre de senhas. Isso o Chrome para Windows já faz, usando o Windows Hello. Assim, cada vez que você vai usar o preenchimento automatico do Chrome, com dados de cartão, ele solicita sua biometria.

É diferente da biometria que seu app do banco solicita, por exemplo. Ali meu app chama a API de biometria do Android, o Android armazena o refresh token (Nunca a senha) e o criptografa usando o hash de sua biometria. Quando você for acessar meu app novamente, eu mais uma vez chamo a API de biometria, ela solicita sua digital, estando correta, descriptografa o token e passa para meu app.

Para ter isso, os sites precisariam implementar e nem sei se temos uma API a nível de browser, eficiente para isso. Sei que o Chrome já carrega consigo API para Yubikey, por exemplo, mas biometria não tenho certeza.

2 curtidas

Se for para gastar dinheiro, melhor é um gerenciador de senhas pago, ou uma chave fido U2F que é muito mais vantagem e mais seguro
Yubico que @anon77218728 falou é muito mais negócio pensando em segurança

1 curtida

A questão é que os navegadores Chromuim não pedem autenticação pra preencherem senhas, apenas cartões.

Se quiser usar preenchimento com biometria vai ter que usar um gerenciador de senhas externo, o Bitwarden (melhor gerenciador gratuito) por exemplo, suporta essa função.

Edit: Acabei de checar, e parece que agora o Edge já tem suporte pra Windows Hello, então se vc comprar um desses sensores vai funcionar de maneira nativa com o gerenciador de senhas do Edge.

1 curtida

Os sites não precisam ter suporte nativo, o próprio Edge (ou um gerenciador de senhas) pode fazer essa ponte.

Resumo

Página de suporte do Bitwarden:
Browser Extensions support the same biometrics options as Desktop; for Windows via Windows Hello using PIN, Facial Recognition, or other hardware that meets Windows Hello biometric requirements and for macOS via Touch ID.

o uso de biometria para login em sites ainda não é usado, a yubico esta para lançar uma nova yubikey com essa função.

Getting a biometric security key right - Yubico

Você está falando de gerenciador de senhas, amigo. Releia lá o que expliquei para nosso colega. Expliquei bem detalhado o diferente funcionamento das duas situações, uma coisa é gerenciador de senhas com preenchimento automático, solicitando biometria. Outra é um app ou site consumindo a API de biometria, neste caso, não temos preenchimento de senha e nem seu armazenamento, ao invés disso é um refresh token que o key manager do sistema orquestra.

Isso aqui:

Android Developers Blog: One Biometric API Over all Android (googleblog.com)

É totalmente diferente de apenas o cofre de senha requisitar sua biometria. Como disse, neste último caso, apenas o cofre de senhas está requisitando sua biometria para autenticar o preenchimento automático de suas credenciais nele salvas.

Já quando meu app chama a API de biometria, eu não preciso trafegar a senha do usuário cada vez que ele vai se autenticar, apenas gero uma nova sessão, enquanto o refresh token estiver válido.

E como eu disse, HOJE, as aplicações web, vulgo sites, não oferecem tal funcionalidade por não ser algo popular como tornou-se com os dispositivos móveis e também a ausência de APIs robustas como as que encontramos nos sistemas mobiles.

PS: Estou usando o Android como exemplo, por desenvolver e ter muito mais contato com ele, mas temos APIs e funcionalidades similares no IOS.

2 curtidas

Também vale uma curiosidade, com a popularidade dos dispositivos móveis e a tendência de deixarmos de usar senhas para trocarmos por métodos de autenticação mais seguros e com menos atrito, seria muito mais vantajoso para um desenvolvedor web gastar tempo e esforço em uma autenticação push, onde você autoriza clicando em SIM ou no número solicitado em seu smartphone (Tal qual a Microsoft já faz, usando o Microsoft Authenticator para isso) do que implementando biometria para web, sabendo que a grande maioria dos notebooks e PCs não terão o recurso disponível.

2 curtidas

Obrigado pelo textão, eu sei a diferença entre autenticação nativa/direta e um gerenciador de senhas rs.

A questão é que ele disse que queria um sistema de autenticação usando biometria, mas ele não foi específico (pelo menos não pra mim) em qual dois métodos queria usar.
Então sugeri o que seria mais simples, além do mais poucos sites tem autenticação via hardware disponível (e ao meu ver seria perda de dinheiro comprar uma chave de 500 reais pra usar em meia dúzia de sites).

Quando ele voltar ele pode explicar, e decidir qual vai usar baseado nas suas necessidades.

Concordo totalmente, tanto que sempre que possível tenho esse método habilitado e é o meu favorito.

Sim, por isso acabei explicando os dois cenários para ele. Mas como você me citou e disse que os sites não precisavam, entendi que você não tinha compreendido a diferença entre os modelos.

Desta forma, desculpe pela extensa explicação.

1 curtida

Sem problemas, rolou uma falha de comunicação ali, acontece.
Pelo menos agora ele tem um boa explicação sobre os dois métodos.

Problema é preço Brasil, está caro até para importar

Pois é, estou querendo trocar minha yubikey por uma que suporte FIDO2, mas com esse dollar ta triste

Tem que esperar um pouco, passar a pandemia e a política se ajustar (2023 talvez) para da uma estabilizada na economia.
E eu estou esperando o serviço de e-mail implantar, já tem via QR code mas não sou muito fã não, prefiro via hardware

Yubikey é legal e tudo (eu tenho, adoro), mas o Windows Hello me parece suficiente pra maioria das pessoas. Pena que a maioria dos sites não aceita ele, apesar de usarem WebAuthn/FIDO2.

Não sei os outros, mas o Edge tem a opção de pedir autenticação biométrica ao preencher senhas em qualquer site:

A descrição da função não deixa muito claro, mas no meu notebook que tem um leitor de impressão digital, ao clicar num campo de senha, o Windows Hello pede a biometria:

1 curtida

Mas você usa a digital e já loga no site ou usa a digital e ainda assim precisa digitar a senha?

Se for usar a digital e já logar no site, show. É isso que preciso.