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

  1. Autenticar o usuário via Neon Auth.
  2. Resolver membership e organização ativa.
  3. Aplicar organizacao_id em leitura e gravação.
  4. Negar rotas e dados sem vínculo autorizado.
  5. 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

DataO que mudouQuemReferência
2026-09-15Criado no pacote de requisitos do MVPLC VerumÍndice do MVP - Requisitos
2026-09-16Numerado e importado para a documentaçãoLuizRegistro de Mudanças