Passkeys: o presente do MFA

Passkeys: o presente do MFA

Deixando de ser apenas uma tendência, o uso do passwordless passou a ser expandido nas organizações e empresas ao redor do mundo. Sua chegada trouxe como benefícios não apenas a segurança do ambiente, mas também a melhora na experiência do usuário, que não precisa recordar senhas complexas. Apresentando uma outra opção para uma autenticação passwordless temos as Passkeys!


O que são Passkeys?

Com a tendência de desativação das tradicionais senhas por problemas de segurança e usabilidade, os métodos de autenticação passwordless surgem como principais opções para a autenticação dos usuários.

Dentro desse grupo, temos como novo integrante as Passkeys!

As passkeys foram criadas e divulgadas pela FIDO Alliance, uma das principais referências quando o tema é identity security. A proposta cumprida pela criação das passkeys foi: deixar os acessos mais seguros, ao mesmo tempo fornecendo para o usuário maior conforto em seu uso.

Com o uso de uma passkey para se autenticar na aplicação, o usuário se beneficia do uso de um dos fatores de autenticação configurados para acessar aquele dispositivo (sendo um PIN ou sua biometria) para confirmar o acesso a aplicação. O "cumprimento" dessa etapa de autenticação permitirá que o processo de interação com a aplicação seja concluído.

💡
Em dispositivos windows que contenham as capacidades do windows hello for business, podemos fazer uso da biometria facial para desbloqueio da máquina, bem como para autenticação na aplicação.

Como elas funcionam?

Antes de entrarmos no detalhe sobre como as passkeys funcionam, é importante deixar claro que o pré-requisito para as utilizarmos é: a plataforma que estamos acessando deve fornecer suporte a esse método de autenticação. Isso se dá por conta das interações que serão feitas entre cliente e servidor, sendo necessário validar o "desafio" gerado pelo evento de autenticação.

Após garantirmos que a plataforma que será utilizada suporta o uso desse método de autenticação, chegou a hora de entrarmos no detalhe sobre o que mais é necessário e como ocorrem as interações.

As passkeys contém 2 componentes principais utilizados em suas interações:

  • Chave Privada - armazenado no cliente (dispositivo do usuário)

  • Chave Pública - armazenada no servidor da aplicação

A chave pública será gerada à partir da chave privada e enviada ao servidor de aplicação, onde será armazenada. Quando um fluxo de autenticação for executado, um "desafio" será enviado para o dispositivo do usuário. Será solicitado que o usuário desbloqueie o dispositivo, "assinando" o desafio e retornando para o servidor, que validará o resultado da assinatura, garantindo que o usuário autenticado é o detentor daquela passkey.

Esse é de maneira simplificada, o processo de uso de uma passkey. Antes do uso, temos seu cadastro, que se dá dessa forma:

O usuário inicia a interação na aplicação web selecionando a opção de "criar uma passkey". A partir dessa interação, o back-end iniciará o processo de criação da passkey, enviando ao dispositivo a solicitação para criação da chave privada e chave pública e recebendo a própria chave pública, gerada após o desbloqueio do dispositivo pelo usuário.

Após a criação da passkey, toda vez que for se autenticar na aplicação em questão, o usuário poderá selecionar a opção "login with passkey". Receberá uma solicitação para selecionar a passkey e se autenticará utilizando um PIN ou uma biometria.

E é isso!

Um exemplo de aplicação que tem o uso das passkeys habilitado é o GitHub. Logo na primeira página (formulário de login) você será questionado se deseja acessar sua conta utilizando uma passkey ou seu conjunto de credenciais padrão (usuário + senha + 2FA).

Ao clicar em "sign in with a passkey" você receberá uma tela parecida com essa:

Esse prompt é do Windows Hello e permite que você selecione com qual passkey deseja autenticar na aplicação.

Você também tem a opção de utilizar uma passkey diferente, como por exemplo uma existente em outro dispositivo.


Benefícios

Sendo um método de autenticação phishing resistant, temos bem claro que a segurança contra vazamentos de dados e roubo de credenciais são benefícios herdados quando utilizamos esse método de autenticação.

Do ponto de vista do usuário, o fato de não ser mais necessário recordar as credenciais para todos os acessos traz conforto e confiança no momento de acesso à aplicação. Do lado da aplicação, não se preocupar com armazenar informações sensíveis e protegê-las contra o vazamento de dados retira uma significativa carga de trabalho dos administradores.

Outro benefício das passkeys que nenhum outro método de autenticação tem é o "link" com informações que não podem ser utilizadas por outros usuários. Em dispositivos que contém o windows hello for business, você pode utilizar sua biometria facial para acessar sua conta. Esse recurso garante que você (e apenas você) possa acessar aquela conta com a passkey selecionada.

💡
Se a sua organização fizer uso do Microsoft Entra ID, é possível configurar o uso das passkeys junto do aplicativo Microsoft Authenticator para permitir a autenticação nas aplicações que estão conectadas ao Entra.

O futuro é passwordless e o quanto antes as organizações implementarem esse novo modelo de acesso, mais rápido os times de segurança e os usuários poderão usufruir dos benefícios gerados pela sua adoção.

Espero que tenha gostado do texto e nos veremos em breve.

Até logo!