Executando verificação de segurança...
3

Bem... Implementa os dois kkkk. Brincadeiras a parte, empresas como a Microsoft usam seus métodos de 2fa como métodos de login, sem precisar da senha (apesar de ainda existir essa opção). O Github, por exemplo, usa o seu aplicativo como 2fa. Então, é bom ter opção de entrar com senha, mas não necessariamente é ruim ter a opção de entrar com magic links ou, como o Notion faz, um tipo de magic link, só que tem, também, a opção de colocar o código enviado por e-mail.

Carregando publicação patrocinada...
1

Justo! Acho que implementar as suas seja uma solução boa, mas isso ainda faz manter uma informação valiosa no banco de dados que é a senha... e caso a pessoa tenha utilizado a mesma senha em outro serviço na qual teve seus dados expostos, ela está 50% exposta aqui (faltando só o email).

Em paralelos, já vi serviços implementarem magic link de uma forma muito insegura, que é receber um email e ao clicar no link dele, o dispositivo na qual fez a requisição é autenticado. Por exemplo:

  1. Atacante (pelo celular, ou qualquer outro client) faz requisição com o usuário/email da vítma.
  2. Vítma recebe email e clica sem querer no link (ou o Outlook clica por você, como vimos no passado)
  3. Celular do atacante é autenticado.
3

Sim sim. Além de autenticação por magic link (ou outro método sem senha) ser segura (se implementada da forma correta), por não precisar armazenar a senha em um banco de dados "home-made" e pelo acesso estar mais seguro (por exemplo: é muito mais difícil hackear um banco de dados que é da Google do que um que não podemos garantir se vai vazar a URL, etc.), também é conveniente para o usuário. Quanto a implemantação, não acho que devemos fazer apenas por e-mail. Além de aplicativos como o Google Authenticator, se no futuro nós fizermos um aplicativo, poderiamos implementar ele assim também. Em pararelo, poderíamos criar backup codes, para caso a pessoa perder o acesso do e-mail, resolvendo o problema que fez com que não implementasse o magic link.

5

João... gosto bastante da opção com OPT (One-Time Password) que utiliza aplicativos como o Google Authenticator que você mencionou ou o Authy. Seria uma opção segura, viável e sem custos adicionais para o usário, como no caso dos tokens UF2/FIDO.

Respondendo ao Filipe, também não gosto de links mágicos por e-mail, como mencionei, acho a pior implementação de autenticação sem senha em termos de segurança.

Contudo ainda temos um "pequeno" problema na implementação de soluções assim. Uma solução totalmente passwordless só transfere a responsabilidade da autenticação por senha para um terceiro. O OTP facilita logins futuros, mas daí o usuário já fez um cadastro, confirmou a criação da conta por e-mail (como no TabNews). Então como se daria a recuperação do acesso?

Suponha que o usuário perca os códigos de backup e o celular com o app de autenticação. Solicitar o reset de senha pelo e-mail torna tudo novamente frágil e susceptível a ataques.

Tenho algumas ideias que envolvem biometria e a assinatura de documentos com a plataforma Gov.BR, mas abordarei esse assunto mais profundamente quando conseguir fazer uam prova de conceito mínima.

1