>VIBECODEWALL
metodologiaresultadosprointel[login]
|
[escanear]
/blog/artigo
Segurança/2026-09-06/4 min

Mantenha os Dados de Cada Cliente na Conta Certa

Seu app pode permitir a entrada de várias pessoas e ainda misturar anotações, pedidos, reservas ou perfis. Aprenda a separar os dados e testar o resultado com duas contas comuns.

ler em inglês

antes de começar

Entrar na conta informa ao app quem é a pessoa. Outras regras precisam definir quais anotações, reservas, pedidos ou perfis ela pode ver e alterar.

Entenda como os dados podem aparecer na conta errada

em palavras simples

Quando várias pessoas usam o mesmo app, cada uma deve receber somente as anotações, reservas, mensagens, pedidos ou perfis destinados a ela.

Um app pode parecer perfeito enquanto só você o utiliza. O problema aparece quando uma segunda pessoa entra. Um cliente pode abrir a lista de pedidos e encontrar o pedido de outro cliente. Um membro pode alterar uma anotação escrita por outra pessoa. Entrar na conta não impede isso automaticamente. Essa entrada apenas informa ao app qual conta está presente. Ainda é preciso tomar uma decisão separada para cada item que será mostrado ou alterado.

O Supabase mantém as informações em grupos organizados. O nome técnico desse armazenamento organizado é banco de dados, e cada grupo é chamado de tabela. Uma tabela pode guardar perfis, reservas, tarefas, mensagens ou pedidos. O Supabase consegue examinar um item salvo por vez e decidir se a pessoa atual pode usá-lo. O nome técnico é Row Level Security, muitas vezes abreviado como RLS. Essas regras ficam junto dos dados salvos, por isso a proteção não depende apenas de uma tela esconder um botão ou filtrar uma lista.

  • ▸Anote cada tipo de informação que seu app salva sobre uma pessoa.
  • ▸Para cada tipo, defina quem pode ver ou alterar os itens.

risco comum

A lista de tarefas foi criada quando apenas o dono usava o app. Depois que clientes entram, ela mostra todas as tarefas, e uma pessoa vê nomes e prazos das tarefas de outra.

o que fazer agora

Faça um inventário simples de perfis, anotações, reservas, mensagens, pedidos e dados de arquivos enviados. Ao lado de cada item, escreva quem pode usá-lo.

peça isto à sua IA

Revise meu app no Supabase e liste todas as tabelas que guardam perfis, anotações, reservas, mensagens, pedidos, dados de arquivos enviados ou outras informações pertencentes a uma pessoa conectada. Para cada tabela, explique em linguagem simples quem deve poder ver, criar, editar e excluir cada registro. Não altere nada ainda. Aponte toda tabela em que a regra de pertencimento esteja ausente ou pouco clara.

Marque quem é o dono de cada item salvo

em palavras simples

Cada anotação, reserva, mensagem ou pedido precisa de uma identificação confiável da conta à qual pertence.

Imagine uma reserva como uma linha de caderno. Essa linha precisa de uma marca confiável que identifique seu dono. Sem ela, o app não consegue separar com segurança a reserva de um cliente da reserva de outro. O nome exibido não basta, pois duas pessoas podem escolher o mesmo nome. Um e-mail digitado em um formulário também não prova nada, porque alguém pode informar o endereço de outra pessoa. A marca de dono deve vir da conta que já entrou no app.

O Supabase fornece uma identidade estável para cada conta conectada. O nome técnico é identificador de usuário. Salve esse identificador em todo item que pertence a uma pessoa. Quando uma anotação ou um pedido for criado, o Supabase deve usar a identidade da conta atual, sem confiar em um dono informado pela tela do visitante. A tela é a parte visível em que a pessoa toca ou clica; ela pode pedir uma ação, mas não deve escolher quem será o dono do resultado. Defina também como funcionam itens compartilhados, como uma reserva visível para o cliente e para o funcionário responsável.

  • ▸Use a identidade estável da conta conectada como marca de dono.
  • ▸Crie uma regra intencional para itens compartilhados, sem deixar o dono indefinido.

risco comum

Um formulário de pedido aceita uma marca de dono escolhida pelo visitante. A pessoa troca essa marca, e o novo pedido aparece dentro da conta de outro cliente.

o que fazer agora

Examine registros de exemplo em cada tabela ligada a pessoas e confirme que o campo de dono foi preenchido a partir da conta conectada.

peça isto à sua IA

Atualize todas as tabelas do meu app no Supabase que guardam itens de uma pessoa para que cada novo registro salve como dono o identificador do usuário conectado. Não confie em um identificador de dono enviado por formulário, página, barra de endereço ou solicitação controlada pelo visitante. Explique como os registros antigos sem dono serão tratados com segurança. Mostre as mudanças propostas no banco e no app antes de aplicá-las.

Escolha o que cada pessoa pode fazer

em palavras simples

Ver, criar, editar e excluir informações são decisões diferentes e precisam ser verificadas separadamente.

Um cliente pode precisar ver uma reserva, mas não cancelá-la depois que o atendimento começou. Uma pessoa do suporte pode precisar ler a dúvida de um cliente sem alterar o perfil dele. Quem pode criar um comentário não deve ganhar automaticamente o poder de editar todos os comentários. Trate ver, criar, editar e excluir como quatro escolhas separadas. Dê a cada pessoa somente as ações necessárias para o funcionamento do app.

O Supabase representa cada escolha como uma regra aplicada aos dados. O nome técnico é policy, chamada de política em português. Uma política pode cuidar da leitura, criação, edição ou exclusão de itens salvos. Na documentação do Supabase, essas ações podem aparecer como select, insert, update e delete. Comece com a menor regra útil: uma pessoa comum conectada só pode usar um item cujo identificador de dono seja igual ao identificador dela. Depois, acrescente exceções bem definidas para necessidades reais, como um funcionário responsável consultar um pedido de suporte. Evite uma regra ampla para toda a equipe quando funções diferentes precisam de dados diferentes.

  • ▸Decida separadamente quem pode ver, criar, editar e excluir.
  • ▸Crie exceções restritas somente quando houver uma necessidade real de equipe ou compartilhamento.

risco comum

Os membros precisam criar os próprios comentários, mas uma regra ampla também permite editar ou excluir comentários escritos por qualquer outra pessoa.

o que fazer agora

Para cada tabela, responda por escrito quem pode ver, criar, editar e excluir um item.

peça isto à sua IA

Crie políticas de Row Level Security no Supabase para todas as tabelas do meu app que guardam itens de uma pessoa. Separe SELECT, INSERT, UPDATE e DELETE. Um usuário comum conectado só pode agir em registros cujo identificador de dono seja igual ao identificador do usuário atual. Em INSERT e UPDATE, também impeça a troca do identificador de dono para outra conta. Liste separadamente qualquer exceção para equipe ou registros compartilhados, explique cada política em linguagem simples e mostre o SQL antes de aplicar.

Comprove a separação usando duas contas comuns

em palavras simples

Testar como dois clientes diferentes revela erros que sua conta de dono pode esconder.

Sua conta de dono pode ter poderes que um cliente comum não possui. Se você testar somente com ela, uma regra ausente pode parecer correta. Crie duas contas de teste sem informações reais de clientes. Coloque em cada conta itens de exemplo bem diferentes, como uma anotação azul em uma e uma anotação laranja na outra. Assim, qualquer mistura fica fácil de perceber.

Use a primeira conta para conferir listas, páginas de cada item, buscas, formulários de criação, edição e exclusão. Recarregue as páginas importantes e abra diretamente os endereços de páginas salvas. Depois, repita tudo com a segunda conta. Não considere um menu escondido como prova, pois ocultar um botão não significa proteger os dados salvos. O nome técnico da verificação que confirma se a pessoa certa é aceita e a pessoa errada é recusada é teste de autorização. Anote o resultado esperado antes de testar, incluindo uma recusa clara quando uma conta tenta usar o item de exemplo da outra.

  • ▸Use duas contas comuns com informações de exemplo claramente diferentes.
  • ▸Teste a abertura direta de páginas e todas as ações, não apenas os menus visíveis.

risco comum

A lista principal aparece correta nas duas contas, mas o endereço salvo de uma reserva individual abre os detalhes da reserva pertencente à outra conta.

o que fazer agora

Execute o mesmo teste escrito nas duas contas e corrija qualquer caso que revele ou altere as informações de exemplo da outra pessoa.

peça isto à sua IA

Crie um plano de testes com duas contas para meu app no Supabase, usando a Conta A e a Conta B com dados de exemplo seguros. Inclua listas, páginas de cada item, busca, criação, edição, exclusão, recarregamento e abertura direta de endereços de páginas salvas. Inclua tentativas da Conta A de ver ou alterar registros da Conta B e também o contrário. Informe o resultado esperado de cada teste e confirme que as ações recusadas não modificam os dados salvos.

Repita as verificações sempre que o app mudar

em palavras simples

Um recurso novo pode criar informações salvas sem as regras que mantêm os dados de uma pessoa longe das outras.

Uma ferramenta de IA pode adicionar favoritos, avisos, conversas, documentos gerados ou dados de arquivos quando você pede um recurso novo. Ela também pode criar uma tabela mesmo que você não tenha pedido isso pelo nome. Trate cada novo lugar que salva informações como uma nova decisão de pertencimento. Antes de publicar a mudança, confirme quem é o dono de cada item, o que uma pessoa comum pode fazer e se o Supabase verifica todos os registros envolvidos.

Examine também os arquivos enviados aos visitantes. Senhas, chaves de pagamento e códigos de acesso capazes de abrir dados de clientes ou gastar dinheiro devem permanecer em uma parte protegida do app que o visitante não consegue baixar. Os desenvolvedores chamam essa parte protegida de lado do servidor. Depois de mudanças importantes, repita os testes com duas contas. A VibeCodeWall verifica o app público pelo lado de fora; ela não vê código particular. Também pode continuar acompanhando mudanças importantes no app público ao longo do tempo. Essa visão externa complementa sua revisão e seus testes, mas não substitui nenhum dos dois.

  • ▸Revise o pertencimento sempre que um recurso criar ou alterar informações salvas.
  • ▸Combine testes repetidos com duas contas e acompanhamento contínuo do app público.

risco comum

Um recurso novo de favoritos parece funcionar, mas sua tabela não tem regras por registro ativas e envia a um membro favoritos salvos por outras pessoas.

o que fazer agora

Inclua na revisão antes de publicar todas as tabelas alteradas, todos os arquivos enviados aos visitantes e as duas contas comuns. Continue acompanhando o app público depois disso.

peça isto à sua IA

Antes de eu publicar esta mudança, inspecione todas as tabelas novas ou alteradas do Supabase e cada recurso que salva perfis, favoritos, avisos, conversas, documentos, pedidos, reservas, mensagens ou dados de arquivos. Confirme quem é o dono de cada registro, se a Row Level Security está ativada e se existem políticas separadas para SELECT, INSERT, UPDATE e DELETE. Crie uma lista de testes com duas contas. Aponte também qualquer senha, chave de pagamento ou código de acesso capaz de abrir dados ou gastar dinheiro caso possa ser incluído em arquivos enviados aos visitantes. Explique cada resultado em linguagem simples e não enfraqueça as proteções existentes.

Checklist rápido

  1. 01Liste cada tipo de dado de cliente, membro, pedido, reserva, mensagem ou perfil que o app salva.
  2. 02Decida quem pode ver, criar, editar e excluir cada tipo de informação salva.
  3. 03Confirme que todo item de uma pessoa registra a identidade da conta dona dele.
  4. 04Ative no Supabase as regras por registro em toda tabela que contenha dados de uma pessoa.
  5. 05Teste todas as telas e ações importantes com duas contas comuns.
  6. 06Confira páginas de detalhes, buscas, recarregamentos, edições e exclusões com as duas contas.
  7. 07Mantenha senhas, chaves de pagamento e códigos de acesso longe dos arquivos recebidos por visitantes.
  8. 08Confira o app público pelo lado de fora depois de mudanças importantes e continue acompanhando ao longo do tempo.

FAQ

Entrar na conta já separa os dados de cada cliente?

Não. A entrada identifica a conta atual. Regras separadas para cada registro devem decidir quais anotações, pedidos, reservas, mensagens ou perfis essa conta pode ver ou alterar.

Todas as tabelas do Supabase precisam das mesmas regras?

Não. Revise todas as tabelas, mas escolha as regras de acordo com o conteúdo. Dados pertencentes a uma pessoa geralmente exigem a conferência do dono; informações realmente públicas precisam de uma regra pública clara e intencional.

Testar somente com minha conta de dono é suficiente?

Não. Use duas contas comuns como teste principal, pois a conta de dono pode ter poderes maiores e esconder um erro.

O que devo conferir depois de adicionar um recurso?

Encontre cada novo tipo de informação salva, defina seu dono, escolha cada ação permitida, confirme que as regras estão ativas e repita os testes com duas contas antes de publicar.

verifique seu app publicado

Veja o que qualquer pessoa consegue enxergar no seu app

Comece com uma verificação gratuita. O VibeCodeWall analisa a versão pública do app e continua acompanhando mudanças importantes ao longo do tempo.

verificar meu app grátis →