You are viewing the Portuguese (Brazil) site, but your language preference is set to English. Switch to English site →

Menu

Expand
Classifique esta página:

Práticas recomendadas de verificação e autenticação de dois fatores

A verificação é uma primeira etapa essencial em seu relacionamento on-line com um usuário. Ao verificar se um novo usuário é quem ele diz ser, você pode reduzir spam e fraude em seu site e, ao mesmo tempo, garantir a segurança do usuário.

O projeto da verificação do usuário envolve mais do que apenas escolher o canal de verificação correto. A Twilio tem apoiado milhares de clientes que implantam verificações e implementações de autenticação de dois fatores (2FA). Este guia fornecerá recomendações para cada etapa do processo de verificação do usuário, desde a coleta de números de telefone até a recuperação da conta.

Essas recomendações são escritas com a API Verify da Twilio em mente, mas muitas se aplicam independentemente do seu provedor de verificação.

Se você estiver pronto para começar a criar, confira um de nossos Inícios rápidos de verificação, disponíveis em uma variedade de linguagens de programação para vários canais de verificação.

Entender a diferença entre verificação e autenticação

A verificação e a autenticação são experiências de usuário semelhantes, mas têm algumas diferenças importantes em como você pode projetar a experiência do usuário.

A verificação acontece quando você associa pela primeira vez os detalhes a uma conta de cliente. Isso pode ser:

  • Ao se inscrever
  • Quando o usuário fornece novas informações de contato, como um endereço de e-mail ou número de telefone
  • Quando o usuário associa um novo dispositivo ou navegador à sua conta

A autenticação , incluindo autenticação de dois fatores (2FA) ou autenticação multifatores (MFA), acontece durante interações contínuas com o cliente, como:

  • No login
  • Durante o check-out ou ao fazer transações de alto valor
  • Em chamadas de atendimento ao cliente
  • Alterações de conta, como a redefinição de uma senha ou a atualização de um endereço

A API Verify da Twilio pode ser usada para verificar e autenticar identidades de usuários e pode ser usada para todas essas interações com clientes.

​​Planeje um fluxo de registro do usuário

Equilibre a velocidade com a segurança

Como toda solução de segurança, você quer ter certeza de que o atrito que está adicionando não impedirá que o usuário de atingir seus objetivos, seja se inscrever no seu serviço ou concluir uma transação.

Suporte a vários canais de autenticação

A API Verify da Twilio é compatível com:

Cada canal tem benefícios diferentes. Por exemplo, o SMS tem a maior adoção do usuário final, enquanto o TOTP é mais seguro e funciona off-line. Você pode perguntar se a 2FA baseada em e-mail é uma boa ideia (melhor do que a 2FA!).

A maioria das empresas oferece suporte a vários canais de verificação e deixa que seus usuários decidam. Por exemplo, o GitHub suporta TOTP, SMS e chaves de segurança e oferece ainda mais opções para recuperação de conta.

Leia mais sobre as compensações entre os diferentes canais de autenticação compatíveis com a API de verificação.

Devo usar o canal de SMS?

O SMS oferece menos segurança do que as autenticações por push ou TOTP, mas, em muitos casos, você ainda deve deixá-lo disponível como uma opção de autenticação. O suporte a SMS está integrado a todos os celulares e, sem um aplicativo separado, os tokens enviados pelo SMS chegarão para seus usuários. Os benefícios do SMS para a experiência do usuário ainda o tornam uma escolha popular para muitas empresas. Saiba mais sobre por que o SMS 2FA permanece.

Se a opção for entre autenticação somente com senha ou SMS com senha, a adição de SMS será um vencedor claro.

Quais são os canais mais seguros?

As autenticações por push são o canal mais seguro para a 2FA porque estão ligadas a um dispositivo específico e resistentes a phishing. O push também oferece a capacidade de negar uma solicitação de autenticação, que pode ser usada para detectar fraudes.

As autenticações de envio por push também são muito convenientes para seus usuários. Em vez de precisar abrir um aplicativo móvel e navegar até o token do seu site, as autenticações por push apresentam uma caixa de diálogo "Approve"/"Deny" (Aprovar/Negar) de fácil acesso. Isso pode ser incorporado diretamente ao seu aplicativo com nossos SDKs, portanto, não requer que o usuário faça download de um app adicional.

Embora ligeiramente menos seguras do que as autenticações por push, os TOTP (One Time Passcodes, senha de uso único) são uma opção forte que oferece segurança adicional em comparação ao SMS.

Verificação de conta sugerida, segurança e fluxo de uso

Para um fluxo de registro de usuário de exemplo com senha de uso único (OTP), lógica de repetição inteligente e fallback de canal de voz, verifique este projeto do Code Exchange.

Permita que seus clientes escolham os canais de autenticação que desejam usar

Permitir que os clientes definam preferências de autenticação e armazenem essas preferências para logins subsequentes. Essa é uma ótima maneira de encantar seus usuários e reduzir as frustrações durante o processo de autenticação. Por exemplo, os usuários de telefones fixos desejarão uma chamada de voz em vez de um SMS. Você pode armazenar preferências no banco de dados de usuários ou usar um serviço de terceiros, como Segment Personas.

Esses canais também podem ser usados para backup e recuperação de contas (mais informações a seguir).

Projete sua experiência de usuário para o sucesso da verificação

Exibir informações de contato completas para a verificação inicial do usuário

Para casos de uso de verificação por telefone ou e-mail (em oposição ao login contínuo ou autenticação de dois fatores), exiba o identificador completo na interface para que o usuário possa detectar erros de digitação durante o processo de registro. Você também pode introduzir uma etapa intermediária que pede ao usuário para confirmar o número de telefone antes de enviar o OTP para detectar erros.

one time passcode input field with message that shows complete phone number with option to edit.

Pense de maneira internacional para verificação por telefone

A construção de suporte internacional para números de telefone inclui a separação de campos de entrada de código de país e número de telefone nos campos do formulário e o armazenamento de números de telefone no formato E.164 padrão.

Se você estiver enviando OTPs para países que exigem pré-registro de IDs do remetente, será necessário preencher este formulário. Saiba mais sobre o suporte internacional para IDs alfanuméricos do remetente.

Saiba como criar uma entrada de número de telefone internacional em HTML e JavaScript no blog da Twilio.

Valide os números de telefone antes de enviar senhas de uso único (OTPs)

Este tópico é abordado em detalhes em nossa publicação no blog sobre as práticas recomendadas para validação do número de telefone durante a inscrição de novos usuários.

Você também pode usar a API Lookup da Twilio para criar uma lista de permissões de códigos de países a fim de filtrar inscrições para atender aos requisitos de conformidade, reduzir fraudes ou, de outro modo, controlar seu pipeline de integração.

intltelinput.gif

Aqui estão alguns recursos adicionais sobre a criação de entradas de números de telefone e a validação de números nesta fase:

  1. Implantação rápida: entrada de telefone internacional (vista acima)
  2. Como validar a entrada do número de telefone em HTML e JavaScript

Aproveite os atributos de HTML para melhorar a experiência de 2FA dos usuários

Não procure mais nada além do humilde elemento de <entrada> como um lugar para otimizar a experiência do usuário. Saiba mais sobre como projetar seus atributos HTML para oferecer suporte ao preenchimento automático e muito mais nesta publicação do blog.

2fa autocomplete

Use a lógica de repetição inteligente para entregar OTPs

Para evitar abuso (e usuários impacientes!) sempre recomendamos a criação de buffers de novas tentativas em fluxos de trabalho de verificação. Isso ajuda a evitar:

  • Enviar spam acidentalmente a um usuário com mensagens de texto repetidas
  • Atingir os limites de taxa de API
  • Fraude de tarifação ou gastos desnecessários

Sugerimos limitar as verificações a 1 solicitação/30 segundos por número de telefone com retirada exponencial. Saiba mais na publicação do blog sobre as práticas recomendadas para gerenciar a lógica de repetição com o SMS 2FA ou confira este projeto do Code Exchange com um exemplo de fluxo lógico de repetição visto abaixo.

resend otp

Adicione opções de recuperação de conta antecipadamente

Pense no que acontece quando um usuário não tem mais acesso a um canal de autenticação, como uma senha esquecida ou um telefone perdido. Registre pelo menos uma maneira adicional de autenticar um usuário ao se inscrever para que você sempre tenha um backup. As combinações comuns incluem:

  • Senha e e-mail
  • E-mail e número de telefone
  • App do autenticador (TOTP) e códigos de backup
  • Autenticação por push e número de telefone

Em seguida, se você estiver oferecendo suporte à autenticação de dois fatores (2FA), adicione um 3o canal. Para obter mais recomendações, assista a esta palestra que dei sobre como projetar a recuperação da conta do cliente em um mundo de 2FA (ou confira os slides).

Planeje a verificação e a autenticação após a inscrição

Sempre verifique cada novo método de contato que você está adicionando

Envie uma senha de uso único para um número de telefone ou endereço de e-mail na primeira vez em que o usuário a fornecer. Isso garante que o usuário tenha controle do dispositivo ou da identidade. Para e-mail, verificar o endereço de e-mail de um usuário na primeira vez que ele fornecer, é uma prática recomendada para reduzir fraudes, garantir a capacidade de entrega e manter uma boa reputação de envio. Se o usuário estiver usando seu aplicativo móvel, registre o dispositivo como um fator a ser usado para verificar Push.

Aguarde até que as informações tenham sido verificadas para armazená-las em seu banco de dados. Como alternativa, adicione um sinalizador "verified" (verificado). Isso ajuda a impedir que erros de digitação ou outras informações não verificadas sejam conectadas a uma conta de usuário.

Se você não se importa em verificar uma parte das informações de contato, pergunte se você precisa coletá-las.

Mascarar números de telefone ou outras IPI para autenticação contínua

Assim que o número de telefone for verificado pela primeira vez, os usos subsequentes devem mascarar o número de telefone para evitar o vazamento de PII. Ao contrário da verificação inicial, não há nenhuma opção para editar um número de telefone para autenticação contínua no exemplo abaixo. Recomendamos expor 3 ou 4 números e mascarar o resto como +1 (5**) ***-**67 ou ********567.

mask-phone-number.png

Incentivar a autenticação de dois fatores (2FA)

Oferecer 2FA não ajuda a proteger seus clientes se eles não optarem pelo recurso. Os incentivos podem ajudar os usuários que se sentem sobrecarregados com o investimento em segurança.

Saiba mais sobre como as empresas estão incentivando os usuários a habilitar a 2FA.

Use a API Verify da Twilio para obter suporte abrangente à verificação

A API Verify ajuda você a desenvolver rapidamente a confiança com os usuários que acessam sua plataforma e se concentrar na lógica de negócios.

Explore as opções de personalização

Escolha o tamanho correto do token

A API suporta comprimentos de token entre 4 e 10 dígitos com um padrão de 6 dígitos. Códigos de verificação mais longos têm mais combinações e são mais difíceis de adivinhar ou força bruta. A API tem limites de taxa robustos que contrariam tentativas de força bruta de qualquer tamanho de token. Você pode alterar o tamanho do token na seção Verificar serviço do console da Twilio.

verify console code length

Personalize a mensagem de verificação

A API Verify oferece suporte a um modelo padrão. O exemplo em inglês é:

O código de verificação do <Nome do app> é: 123456

Você pode substituir o idioma enviando um parâmetro de localidade para qualquer um de nossos diversos idiomas compatíveis. Você também pode fornecer um modelo para dar suporte a casos de uso como não compartilhar avisos, códigos SMS vinculados à origem e seu próprio texto.

Traga sua própria senha de uso único (OTP)

Se você já tem validação de token e lógica de geração e quer manter esses sistemas em funcionamento, é possível fazer isso. Temos um recurso onde você pode usar sua própria OTP e ainda usar nossos modelos de mensagem predefinidos e localizações para texto e voz. Entre em contato com o setor de vendas da Twilio e nós o ajudaremos a ativar essa opção.

Conheça os limites e timeouts

Período de validade do token

Uma vez gerados, os tokens são válidos por 10 minutos. Não é possível alterar o timeout da validade do token para seu aplicativo. Se seus usuários fizerem outra solicitação dentro de 10 minutos, eles receberão o mesmo token. Você pode pesquisar para ver o tempo restante de validade da solicitação do usuário.

Limites de taxa

Os limites de taxa estão em vigor para ajudar a evitar fraudes e proteger seu aplicativo e os servidores da Twilio. Por exemplo, limitamos as tentativas de envio à mesma entidade (número de telefone ou e-mail). Os nossos limites de tarifa incorporados são suficientes para a maioria dos clientes, mas também podem definir os seus próprios limites de tarifa. Além disso, esta publicação de blog aborda como testar e desenvolver com a API Verify sem limitar a taxa.

Com o tempo limite de 10 minutos, a maior parte dos atrasos que verá durante a verificação será de entrada do usuário e não das solicitações de API.

Consulte este documento para obter mais detalhes sobre as práticas recomendadas e os limites de tarifas da API REST da Twilio.

Prepare-se para o inesperado

Monitore as taxas de conversão de verificação

Monitore com base na geografia para detectar picos em verificações não verificadas que possam indicar problemas de abuso ou entrega.

Criar acionadores de uso da conta da Twilio

Seja notificado se algo der errado ou se ocorrer abuso em sua conta com os acionadores de uso da Twilio, disponíveis via API, CLIou console da Twilio.

Adicionar tratamento de erros

Por fim, aproveite o dicionário de erros da Verify e Lookup para lidar com erros adequadamente no aplicativo do cliente.

Ainda tem dúvidas sobre a verificação? Teremos prazer em ajudar.

Agora que você tem todas as práticas recomendadas, pode enviar um OPP SMS em menos de 5 minutos com a API Verify com Code Exchange da Twilio. Saiba mais sobre os parâmetros compatíveis na documentação da API ou confira um de nossos inícios rápidos no idioma de sua escolha. Se você tiver dúvidas sobre a implementação, por favor entre em contato. Mal podemos esperar para ver o que você vai construir e proteger!

Classifique esta página:

Precisa de ajuda?

Às vezes, todos nós precisamos; a programação é difícil. Receba ajuda agora da nossa equipe de suporte, ou confie na sabedoria da multidão navegando pelo Stack Overflow Collective da Twilio ou buscando a tag Twilio no Stack Overflow.

        
        
        

        Obrigado pelo seu feedback!

        Selecione o(s) motivo(s) para seu feedback. As informações adicionais que você fornece nos ajudam a melhorar nossa documentação:

        Enviando seu feedback...
        🎉 Obrigado pelo seu feedback!
        Algo deu errado. Tente novamente.

        Obrigado pelo seu feedback!

        Indique‑nos e obtenha USD10 em 3 etapas simples!

        Etapa 1

        Obtenha o link

        Obtenha um link de indicação pessoal gratuito aqui

        Etapa 2

        Dê USD10

        Seu usuário se inscreve e faz a atualização usando o link

        Etapa 3

        Obtenha USD10

        1.250 mensagens SMS grátis
        OU 1.000 min de voz grátis
        OU 12.000 chats
        OU mais