Autenticar usuário e isolar organizações
Problema / Contexto
O V360 é multiempresa. Toda informação comercial, arquivo, análise e saída de IA deve permanecer segregada por tenant.
História de usuário
Como administrador, vendedor, gestor, sócio, equipe de entrega, quero acessar somente a organização à qual pertenço, para proteger dados comerciais entre empresas.
Comportamento esperado
- Autenticar o usuário via Neon Auth.
- Resolver membership e organização ativa.
- Aplicar organizacao_id em leitura e gravação.
- Negar rotas e dados sem vínculo autorizado.
- Encerrar sessão no logout.
Papel da IA
Não se aplica.
Regras de negócio
- RN1: Usuário de uma empresa nunca visualiza dados de outra.
- RN2: Membership inativo não concede acesso.
- RN3: Controle de acesso deve existir no servidor, não apenas na interface.
Dados envolvidos
- usuario_id — usuário autenticado — sim — fato
- organizacao_id — tenant ativo — sim — fato
- membership — vínculo e papel — sim — decisão humana
- sessao — estado de autenticação — sim — fato
Critérios de aceite
- Dado usuário da Organização A, quando consultar leads, então nenhum dado da Organização B é retornado.
- Dado usuário sem membership ativo, quando acessar rota protegida, então o acesso é negado.
Exceções e erros
- Sessão expirada deve pedir novo login sem revelar dados.
Fora de escopo
- Compartilhamento cross-tenant.
- SSO corporativo avançado.
Dúvidas em aberto
- Nenhuma dúvida aberta identificada nas fontes atuais.
Histórico
| Data | O que mudou | Quem | Referência |
|---|---|---|---|
| 2026-09-15 | Criado no pacote de requisitos do MVP | LC Verum | Índice do MVP - Requisitos |
| 2026-09-16 | Numerado e importado para a documentação | Luiz | Registro de Mudanças |