Pular para o conteúdo
⚙️ HOW-TO

Configurar política de senhas

Defina regras de complexidade, histórico e expiração de senha por projeto.

O que já protege suas senhas hoje

Estas regras valem para todo projeto, sem configuração:

ProteçãoValor em vigor
Comprimento mínimo8 caracteres (máx. 256)
ArmazenamentoArgon2id — a senha nunca é guardada, só o hash
Força brutabloqueio após 10 tentativas falhas, por 15 minutos, em janela deslizante
Enumeração de contasrespostas neutras: não dá para descobrir se um e-mail tem conta
Vazamento de sessãotokens de acesso curtos (1h) + refresh rotacionado
⚠️

Ainda não é self-serve. Complexidade obrigatória (maiúscula/símbolo), histórico de senhas e expiração periódica não estão disponíveis para configuração — nem no dashboard nem por API. Se o seu compliance exige, fale com o suporte: é ajustado caso a caso por projeto.

O que fazer do lado do seu app

Enquanto a política por projeto não é self-serve, o caminho recomendado é validar no cadastro, antes de chamar o signUp:

ts — validação no cliente
// exija o que o SEU produto precisa antes de enviar
if (senha.length < 12) return erro('Use pelo menos 12 caracteres')
if (!/[0-9]/.test(senha)) return erro('Inclua ao menos um número')
await db.auth.signUp({ email, password: senha })

Vale mais do que regras rígidas: prefira senhas longas a símbolos obrigatórios, e ofereça login social ou magic link — quem não cria senha não tem senha vazada.

Recomendações por perfil

  • App consumer (B2C): mínimo de 8, sem exigências extras. Priorize UX e ofereça login social.
  • App corporativo (B2B): exija 12+ no seu formulário e ative MFA para contas administrativas.
  • Compliance (LGPD/SOC 2): 14+, MFA obrigatório para quem acessa dado pessoal, e fale com o suporte sobre histórico e expiração.
Essa página ajudou?