Adicione um segundo fator em duas chamadas.
A autenticação de dois fatores adiciona uma segunda prova além da senha: um código de uso único em um canal que o usuário controla. Com Bird Verify, basta uma chamada de envio no momento do login e uma chamada de verificação quando o usuário digita o código: SMS, WhatsApp ou email, configuração de canal por país e nada para armazenar entre as duas.
import { BirdClient } from "@messagebird/sdk";
const bird = new BirdClient({
apiKey: process.env.BIRD_API_KEY!,
});
// Send the code, then check it by recipient.
await bird.verify.verifications.create({
to: { phone_number: "+15551234567" },
}).safe();
const { data, error } = await bird.verify.verifications.check({
to: { phone_number: "+15551234567" },
code: userInput,
}).safe();
if (error) throw error;
Sua conta
Confirme que é você.
Digite o código enviado para
+1 ••• ••• 4567Exemplo de código de verificação
2FA é o fluxo de verificação, direcionado ao login.
Por baixo, 2FA é o mesmo fluxo que a Bird Verify API executa em todo lugar: crie uma verificação para o telefone ou email do usuário quando ele faz login, depois verifique o código que ele digitar. Como a verificação é por destinatário, seu handler de login não mantém estado por tentativa, e o roteamento do espaço de trabalho decide qual canal cada usuário recebe. Coloque a senha na frente e o mesmo fluxo se torna login sem senha.
O que você conecta para 2FA.
Duas chamadas e uma configuração.
- 01
Envie no login, verifique no envio.
Crie uma verificação quando o usuário se autenticar com o primeiro fator; verifique o código quando ele digitá-lo. Essa é toda a integração.
- 02
SMS, WhatsApp ou email como fator.
Use o canal que você já tem para o usuário: um número de telefone via SMS ou WhatsApp, um email via email. Voz está sendo disponibilizada para mais opções.
- 03
Uma configuração para todo o espaço de trabalho.
Roteamento, regras de código e plano de canal ficam em uma única configuração para todo o espaço de trabalho, já cobrindo login, cadastro e ações de alto valor.
- 04
Força bruta é limitada.
Bloqueio por tentativas e limites de envio por destinatário já vêm integrados, para que o segundo fator não se torne uma nova superfície de ataque.
O fluxo no momento do login.
Envie o código depois que a senha for validada; verifique quando o usuário enviar. Um código errado é um resultado para tratar com um branch, não uma exceção para capturar.
// Send the second factor once the password checks out.
await bird.verify.verifications.create({
to: { phone_number: user.phone },
}).safe();
const { data, error } = await bird.verify.verifications.check({
to: { phone_number: user.phone },
code: submitted,
}).safe();
if (error) throw error;
if (data.success) grantSession(user);
Construa com a plataforma Verify
Os canais e controles por trás do seu fluxo de 2FA.
Escale sem
perder o controle.
Organize equipes em espaços de trabalho, controle o acesso à API e rastreie alterações nos logs de auditoria.
Registo de auditoria
Produção- Espaço de trabalho
- Produção
- Recurso
- Agente de envio
- Acesso de leituraLeitura e escrita