# Separação de dados Multi-tenant

A arquitetura de isolamento por chaves de identificação (também conhecida como *Logical Multi-tenancy* ou *Row-Level Isolation*) é uma estratégia robusta e eficiente para sistemas SaaS que utilizam uma base de dados compartilhada.

#### 1. O Conceito de Isolamento Lógico

Diferente de modelos onde cada cliente tem seu próprio banco de dados (o que elevaria drasticamente o custo de infraestrutura no AWS RDS), o SISMETRO utiliza um Banco de Dados Consolidado.

- **A Chave de Identificação:** Cada tabela que contém dados sensíveis ou de clientes possui uma coluna identificadora (tenant\_id).
- **Filtro em Camada de Aplicação:** O isolamento ocorre no nível do código (Aplicação). Toda e qualquer consulta ao banco de dados é automaticamente "carimbada" com o ID do cliente logado (tenant\_id), garantindo que um Cliente A jamais visualize registros do Cliente B, mesmo estando na mesma tabela física.

#### 2. Vantagens Estratégicas para o Cliente

Ao descrever isso para um fornecedor ou auditoria, os pontos de destaque são:

- **Segurança de Dados:** O isolamento é garantido por políticas globais no código, o que minimiza o erro humano de esquecer um filtro em uma consulta específica.
- **Performance Consistente:** Utilizando de instâncias potentes, replicadas e armazenamento extensível, o ganho de escala beneficia todos os clientes. O banco de dados consegue gerenciar índices globais de forma muito mais performática do que centenas de pequenos bancos separados.
- **Agilidade em Atualizações:** Quando é atualizada a estrutura do banco (migrações), todos os clientes recebem as melhorias de segurança e performance simultaneamente.