myQuickClaw

MFA/2FA Tecnico

Detalhes tecnicos da implementacao TOTP no QuickClaw.

Visao geral

O QuickClaw implementa autenticacao multifator via TOTP (Time-based One-Time Password), definido pela RFC 6238.

O TOTP gera codigos de 6 digitos que mudam a cada 30 segundos. O codigo e calculado a partir de um segredo compartilhado (registrado no momento da ativacao) e do horario atual. Como ambos os lados (app e servidor) conhecem o segredo e o horario, conseguem gerar o mesmo codigo independentemente.

A implementacao e feita via Supabase Auth MFA, que gerencia todo o ciclo de vida do TOTP: geracao do segredo, verificacao de codigos e gerenciamento de fatores.

Niveis de assurance

O Supabase Auth utiliza o conceito de Authentication Assurance Level (AAL) para determinar o nivel de confianca da sessao do usuario:

NivelFatoresAcesso
AAL1Email + SenhaAcesso basico (redirecionado para /mfa-verify se MFA ativo)
AAL2Email + Senha + TOTPAcesso completo ao dashboard e todas as funcionalidades

Se o usuario tem MFA ativo, o middleware do Next.js detecta automaticamente que o nivel atual e AAL1 mas o nivel necessario e AAL2, e redireciona para a pagina /mfa-verify.

Fluxo tecnico

O fluxo completo de autenticacao com MFA ativo funciona da seguinte forma:

1

Login com email e senha

O usuario insere suas credenciais na pagina de login. O Cloudflare Turnstile valida que nao e um agente antes de enviar ao Supabase.

2

Supabase retorna session com AAL1

O Supabase Auth autentica as credenciais e retorna um token JWT com nivel de assurance aal1. A session inclui informacoes sobre fatores MFA cadastrados.

3

Middleware detecta que nextLevel = AAL2

O middleware do Next.js verifica os fatores MFA do usuario. Ao detectar que existe um fator TOTP registrado, determina que o nextLevel e aal2 e que o nivel atual e apenas aal1.

4

Redireciona para /mfa-verify

O middleware redireciona o usuario para a pagina de verificacao MFA. O usuario nao consegue acessar nenhuma pagina do dashboard ate completar esta etapa.

5

Usuario insere codigo TOTP

O usuario abre o app autenticador no celular, encontra o codigo de 6 digitos do QuickClaw e insere na pagina de verificacao. O codigo muda a cada 30 segundos.

6

Supabase eleva para AAL2

O Supabase valida o codigo TOTP e, se correto, eleva a session para nível aal2. O token JWT e atualizado com o novo nivel de assurance.

7

Acesso liberado ao dashboard

Com a session em aal2, o middleware permite o acesso completo. O usuario e redirecionado para o dashboard e pode usar todas as funcionalidades.

Apps compativeis

Qualquer aplicativo que suporte o padrao TOTP (RFC 6238) funciona com o QuickClaw. Os mais populares sao:

  • Google Authenticator — Disponivel para Android e iOS. Simples e direto.
  • Authy — Android, iOS e Desktop. Oferece backup na nuvem dos codigos.
  • Microsoft Authenticator — Android e iOS. Integrado com contas Microsoft.
  • 1Password — Gerenciador de senhas com suporte TOTP integrado.
  • Bitwarden — Gerenciador de senhas open-source com suporte TOTP.

Recomendacao

Se voce usa um gerenciador de senhas como 1Password ou Bitwarden, recomendamos usar o TOTP integrado dele. Assim voce tem senhas e codigos 2FA no mesmo lugar, com backup automatico.

Recuperacao

Em caso de perda do dispositivo com o app autenticador (troca de celular, formatacao, perda ou roubo), voce nao conseguira gerar o codigo TOTP e, portanto, nao conseguira fazer login.

Para recuperar o acesso a sua conta:

  1. Entre em contato com suporte@myquickclaw.com
  2. Informe o email cadastrado na conta
  3. Passe pelo processo de verificacao de identidade
  4. Apos verificacao, o MFA sera desativado e voce podera fazer login normalmente
  5. Recomendamos reativar o MFA imediatamente com o novo dispositivo

Processo de verificacao

A verificacao de identidade e rigorosa para proteger sua conta. O suporte podera solicitar informacoes adicionais para confirmar que voce e o titular da conta. Este processo pode levar ate 48 horas uteis.

myQuickClaw
Suporte QuickClawEscolha uma opcao para comecar

Ola! Sou o agente do QuickClaw. Escolha uma opcao abaixo para que eu possa te ajudar:

Powered by QuickClaw