https://a.storyblok.com/f/270183/51942/0bfbe31982/silent_auth_beta.png

A autenticação silenciosa da Vonage já está em fase beta

Publicado em April 16, 2024

Tempo de leitura: 5 minutos

Nota: Este artigo foi publicado originalmente quando a Autenticação Silenciosa estava em fase beta. A Autenticação Silenciosa já está disponível para o público em geral.

Temos o prazer de anunciar que a Autenticação Silenciosa da Vonage na Verify API do Vonage está agora em fase beta! Anunciamos a adição dessa funcionalidade em janeiro do ano passado, mas há algumas práticas recomendadas e maneiras eficientes de implementar a API que vou abordar a seguir.

O que é a autenticação silenciosa?

A Autenticação Silenciosa é um novo mecanismo de autenticação concebido como alternativa à senha de uso único (OTP), padrão do setor para a autenticação de dois fatores. Atualmente, o uso mais comum da OTP consiste em enviar um código ou PIN para um dispositivo para verificação ou utilizar uma ferramenta de terceiros, como o Google Authenticator , para gerar um código criptografado e com validade limitada que o usuário pode enviar para verificação, o qual também é configurado no lado do servidor.

A Autenticação Silenciosa da Vonage elimina a necessidade de uma segunda etapa nesse processo, integrando-se às suas Applications para criar um rastreamento contínuo com “um clique” em uma solicitação HTTP, a fim de determinar a autenticidade do usuário.

Como isso funciona?

Em uma solicitação de autenticação silenciosa, a Vonage verifica seu Módulo de Identidade do Assinante (SIM) para garantir que ele corresponda aos registros da operadora. Você pode ler mais sobre as novas APIs de rede lançadas no início deste ano, que incluem outra camada de segurança semelhante por meio de uma API chamada SIM Swap. O SIM Swap funciona verificando há quanto tempo o cartão SIM de um usuário está ativo no dispositivo em uso. Para funcionar, a autenticação deve ser iniciada pelo dispositivo do usuário usando apenas uma conexão de celular — isso torna o processo um pouco mais complicado para integrações com aplicativos web, mas, em aplicativos móveis nativos, você pode usar o SDK para Android ou SDK para iOS da Vonage para forçar a conexão via celular.

Há aqui um grande equilíbrio entre usuários finais e desenvolvedores. Essencialmente, para os usuários, a autenticação se torna um processo contínuo, reduzindo-se a um simples clique em um botão. Porém, nos bastidores, os desenvolvedores precisam compreender a complexidade subjacente para implementá-la. Por exemplo, eis o fluxo de trabalho caso você esteja usando um aplicativo web executado em NodeJS:

Diagram showing the Silent Authentication Flow

Isso inclui algumas práticas recomendadas, bem como a integração padrão — você vai perceber que o request_id valor está sendo armazenado em um cookie. Como o fluxo de trabalho precisa se comunicar com o servidor várias vezes, ele fica vulnerável a um ataque “man-in-the-middle”. O código no servidor pode evitar isso armazenando e verificando se o request_id valores correspondam ao longo de todo o fluxo de trabalho.

Vale ressaltar que o fluxo de trabalho de exemplo acima se refere à implementação síncrona. É possível usar a Autenticação Silenciosa de forma assíncrona por meio de webhooks. No entanto, a implementação para fazer isso de forma assíncrona seria mais difícil de documentar de maneira eficaz; por isso, nos limitamos a explicar apenas a primeira opção. Você pode ler mais sobre callbacks assíncronos aqui.

Exemplos de código de autenticação silenciosa

Existem alguns exemplos do cURL no artigo que escrevi quando anunciamos a versão alfa, mas já avançamos um pouco mais agora e imagino que vocês gostariam de ver alguns exemplos reais de como ele é usado na prática, certo?

Sem problema. Existem duas maneiras rápidas de ver isso na prática:

O exemplo de aplicativo exemplo de aplicativo e seu tutorial mostra o exemplo mais simples de envio e análise das respostas recebidas da API.

Para um exemplo mais voltado para o framework, criei o demonstração do aplicativo Silent Authentication Laravel . Sim, é php e Laravel, mas se isso não for a sua praia, a implementação deve ser legível e portável para outras estruturas. O Laravel, por exemplo, foi influenciado pelo o Ruby on Rails e, no mundo do PHP, o Symfony foi influenciado pelo e influencia o Django, e o Spring Boot do Java. Autenticação sofisticada para todos!

A Autenticação Silenciosa faz parte do serviço da Vonage Verify V2 — portanto, você tem opções disponíveis caso, por exemplo, o fluxo de trabalho da Autenticação Silenciosa falhe porque o território não for compatível ou porque o dispositivo está conectado via Wi-Fi. Você tem outros fluxos de trabalho disponíveis; portanto, para recorrer a uma OTP enviada por SMS, é possível adicioná-la no início do fluxo de trabalho. No código, uma solicitação ficaria assim no cURL:

curl -X POST https://api.nexmo.com/v2/verify \ -H "Content-Type: application/json" \ -H "Authorization: Bearer XXXXX" \ -d '{"brand": "Your Brand", "workflow": [ {"channel": "silent_auth", "to": "447700900000"}, {"channel": "sms", "to": "447700900000"} ] }'

No workflow matriz, você pode especificar várias opções na ordem em que deseja tentar a autenticação.

Conclusão

A segurança por meio da autenticação está se tornando cada vez mais um aspecto essencial das aplicações modernas. É por isso que as APIs de rede da Vonage podem ser consideradas os “blocos de construção” da segurança em seu aplicativo. A autenticação silenciosa, de maneira semelhante, foi projetada para ser adicionada como a primeira tentativa de autenticação do usuário antes de recorrer a outros métodos, como SMS ou Voice.

Tem alguma dúvida? Você pode se inscrever na nossa comunidade no Slack ou nos marcar no X.

Compartilhar:

https://a.storyblok.com/f/270183/400x385/12b3020c69/james-seconde.png
James SecondePromotor Sênior de Desenvolvimento em PHP

Sou ator formado, com uma dissertação sobre stand-up comedy, e comecei a me dedicar ao desenvolvimento em PHP por meio dos encontros da comunidade. Você pode me encontrar dando palestras e escrevendo sobre tecnologia, ou ouvindo e comprando discos curiosos da minha coleção de vinil.