Médio

Cadastro por e-mail exige confirmação

Lê as configurações públicas de autenticação (/auth/v1/settings) e falha quando o cadastro está aberto, o login por e-mail está ativo e novas contas são confirmadas sem validar o e-mail.

Por que importa

Com a confirmação automática, qualquer pessoa cria contas com e-mails que não controla e recebe uma sessão na hora. Políticas de RLS que só exigem um usuário logado, como auth.uid() IS NOT NULL, passam a valer para qualquer um que se cadastre.

Como corrigir

Em Authentication → Providers → Email, exija a confirmação de e-mail. Se o app não precisa de cadastro público, desative o cadastro de novos usuários.

Como conferir a correção

SB-002
# Falha quando "disable_signup" é false e "mailer_autoconfirm" é true.
curl -s "$SUPABASE_URL/auth/v1/settings" -H "apikey: $ANON_KEY"

Referências