A decisão

O isolamento é uma fronteira a projetar e verificar, não um campo adicionado no fim. Defina propriedade, acesso entre empresas e restauração independente. A Microsoft descreve armazenamento compartilhado e isolado; a escolha depende da operação.

Um exemplo concreto

Em um SaaS para oficinas distintas, um técnico de A não pode ler serviços de B adivinhando identificadores. Teste listas, busca, anexos, exportações, tarefas e suporte separadamente.

Definir a fronteira no trabalho

Liste dados próprios e compartilhados. Catálogo pode ser comum; preços, contatos e pedidos privados. Um membro de duas empresas deve trocar todo o contexto: busca, arquivos e exportações. Nome na tela não basta; servidor verifica vínculo por operação. Documente suporte privilegiado com autorização, duração e registro.

Testar caminhos indiretos

Crie duas empresas fictícias parecidas. Use identificadores cruzados em detalhes, relatórios, anexos e tarefas. Preencha cache de uma e consulte pela outra. Remova vínculo com trabalho pendente: cancelar ou continuar com identidade de serviço autorizada? Verifique direito na execução, não botão escondido. Repita ao acrescentar funções.

Incluir recuperação e exclusão

Como restaurar um cliente sem voltar os demais? Bancos separados podem ajudar, mas confira anexos e dependências. Armazenamento compartilhado exige recuperação seletiva e ambiente seguro. Ensaie com dados fictícios. Defina exportação e exclusão em índices e backups conforme retenção. Operação, suporte e recuperação precisam da mesma fronteira demonstrável. Na restauração, verifique também se os identificadores preservam suas relações corretas com arquivos e sistemas conectados.

Alternativas a considerar

  • Tabelas compartilhadas simplificam operação, mas exigem controles consistentes. Bancos separados criam fronteiras operacionais com mais migrações, conexões e backups. Uma combinação exige suporte preparado.

Onde o plano falha

Não confie no identificador enviado pelo navegador sem verificar vínculo. Inclua empresa nas chaves de cache e no acesso a arquivos. Teste perda de permissão com tarefas pendentes.

Antes de contratar o projeto

É possível restaurar ou exportar apenas um cliente? Quem autoriza e registra o suporte? Resolva essas necessidades durante o design do SaaS.

Fontes e outras leituras

  1. Microsoft Azure Architecture Center: multitenant storage and data
Serviços

Desenvolvimento SaaS

Um produto para usar, assinar e confiar.

Converse sobre este serviço