Como fazer cada pessoa ver só os próprios dados no seu app
Se o seu app feito com IA tem contas, registros salvos, mensagens, reservas ou pagamentos, a tela de entrada não basta. Você também precisa de regras que mantenham cada pessoa dentro dos próprios dados.
antes de começar
Quando pessoas diferentes usam o mesmo app, cada uma deve ver e mudar apenas o que é dela.
O que isso quer dizer na prática
em palavras simples
Se duas pessoas usam seu app, cada uma deve ver apenas as próprias informações salvas. A tela de entrada sozinha não garante isso.
Pense em um app com notas, reservas, faturas, mensagens, dados de saúde, informações de clientes ou histórico de pagamento. A pessoa entra esperando ver apenas o que é dela. Se o seu app mostra registros de outra pessoa por engano, ou deixa alguém alterar ou apagar dados de outra conta, o problema não é só confusão. É uma falha real de proteção em um app com vários usuários.
A ideia simples vem antes do nome técnico: todo item salvo precisa estar ligado à pessoa certa, e o app precisa conferir essa ligação sempre que mostrar, criar, alterar ou remover dados. No Supabase, o nome técnico é Row Level Security. Quem programa costuma encurtar para RLS. Você não precisa começar decorando isso. Comece pelo resultado desejado: uma pessoa deve ficar limitada aos próprios registros, não aos de todo mundo.
- ▸A tela de entrada diz ao app quem é a pessoa.
- ▸Regras separadas decidem quais registros essa pessoa pode abrir ou mudar.
risco comum
Um cliente entra em um app de notas e vê as notas de outro cliente porque o app carregou todas as notas salvas em vez de mostrar só as dele.
o que fazer agora
Abra seu app com uma conta de teste comum e confira cada lista, página de detalhe, painel e resultado de busca para ver se aparece algo que não pertence àquela conta.
peça isto à sua IA
Revise este app com Supabase para verificar a separação de dados por usuário. Mostre todos os lugares onde uma pessoa logada pode ver, criar, editar ou apagar registros. Em cada lugar, explique em linguagem simples como o app garante que a pessoa só acessa os próprios dados. Se faltar proteção em alguma área, corrija e me diga exatamente o que mudou.
Por que isso importa no seu app
em palavras simples
As pessoas confiam informações ao seu app. Se os registros se misturam, essa confiança acaba rápido.
Muita gente iniciante acha que o perigo só começa quando o app lida com cartão, banco ou dados médicos. Mas até um app simples pode expor informações de clientes, endereços, telefones, notas pessoais, horários de reserva, arquivos enviados ou histórico de pedidos. Se um usuário consegue ver os dados de outro, o app já parece quebrado. Se um usuário consegue editar ou apagar registros de outra pessoa, o estrago fica maior porque a informação pode ser alterada ou perdida.
Por isso o Supabase oferece regras de proteção linha por linha. O nome técnico é Row Level Security. Essas regras servem para olhar cada linha salva e perguntar, na prática, esta linha pertence à pessoa atual? Se sim, permite. Se não, bloqueia. Essa proteção importa em toda tela e em toda ação, não só na primeira página depois da entrada. E ela também importa com o passar do tempo, porque um recurso novo pode escapar das regras que você achava que já cobriam tudo.
- ▸O risco inclui informações de clientes, mensagens, pedidos, arquivos e dados de perfil.
- ▸Um recurso novo pode quebrar a separação mesmo que as telas antigas estejam certas.
risco comum
Um app de reservas esconde corretamente a lista principal, mas uma página de detalhes criada depois ainda mostra a reserva de outra pessoa quando a conta errada abre essa tela.
o que fazer agora
Liste os tipos de informação que seu app guarda para cada pessoa e depois confira se cada tipo de registro está separado por usuário, não só a tela mais importante.
peça isto à sua IA
Faça um mapa completo de todas as informações que pertencem a usuários neste app, incluindo mensagens, perfis, reservas, pedidos, arquivos e notas. Para cada tabela, explique se o Supabase Row Level Security está protegendo, qual é o campo de dono e se alguma tela ainda pode mostrar dados da pessoa errada.
Um risco comum que iniciantes não percebem
em palavras simples
O erro mais comum é proteger o que a pessoa vê, mas esquecer de proteger o que ela pode mudar ou apagar.
Quem está começando costuma testar só o caminho feliz: entra na conta, abre o painel e confirma que parece certo. Mas os problemas aparecem muito nas partes menos óbvias. Talvez a lista esteja filtrada corretamente, mas a edição confie em um número de registro vindo da página. Talvez o botão de apagar funcione em um item de outra conta. Talvez uma tabela nova de comentários ou arquivos enviados tenha sido criada sem salvar quem é o dono de cada linha. Em todos esses casos, o app pode misturar dados entre pessoas mesmo que a tela principal pareça correta.
A regra prática é simples: todo registro que pertence a um usuário deve carregar um vínculo claro com o dono, normalmente o ID da pessoa logada. Depois, toda leitura, criação, alteração e exclusão precisa conferir esse vínculo. Os nomes técnicos são regras de read, insert, update e delete dentro do Row Level Security. Se você usa uma ferramenta de IA para montar o app, peça para ela mostrar essas verificações uma por uma. Você não está procurando palavras bonitas. Está procurando prova de que a conta de uma pessoa não consegue mexer na linha de outra.
- ▸Proteja separadamente ver, criar, editar e apagar.
- ▸Garanta que cada registro guarde a informação de quem é o dono.
risco comum
Um usuário não consegue ver a lista de projetos de outra pessoa, mas ainda consegue apagar o projeto dela abrindo um endereço salvo direto da página.
o que fazer agora
Crie duas contas de teste, coloque dados de exemplo nas duas e teste ver, criar, editar e apagar em cada conta, uma ação por vez.
peça isto à sua IA
Verifique cada tabela do Supabase que guarda registros de usuários. Confirme que cada registro tem um campo de dono ligado à pessoa logada e adicione ou corrija as regras de Row Level Security para ver, criar, editar e apagar, de modo que um usuário não consiga afetar as linhas de outro. Depois me dê um plano simples de teste com duas contas.
O que fazer agora
em palavras simples
Você precisa de um processo curto e repetível: conferir posse, confirmar as regras, manter senhas e chaves de pagamento fora dos arquivos públicos e testar de novo após cada mudança.
Comece pelas tabelas de dados. Encontre cada tabela que guarda informações de usuários individuais. Confirme que cada linha tem um campo claro de dono. Depois pergunte à sua ferramenta de IA onde o Supabase está aplicando as verificações linha por linha. Em seguida, teste com duas contas. O usuário A deve ver apenas os registros de A. O usuário B deve ver apenas os registros de B. Cada um só deve conseguir criar, editar e apagar as próprias linhas. Essa é a verificação prática mais rápida para saber se o seu app está respeitando o limite entre os usuários.
Enquanto faz essa revisão, confira também onde o app guarda senhas, chaves de pagamento e códigos de acesso. Esses itens não devem aparecer em arquivos enviados ao navegador nem em telas públicas. A VibeCodeWall não vê seu código privado por dentro. Ela verifica o app público por fora e acompanha mudanças importantes ao longo do tempo, o que ajuda a perceber arquivos expostos ou mudanças visíveis depois de atualizações. Isso não substitui seus próprios testes de separação por usuário. Funciona melhor junto com eles, como um hábito repetido após cada mudança no app.
- ▸Use duas contas de teste sempre que adicionar uma tela nova ou uma tabela nova.
- ▸Mantenha senhas, chaves de pagamento e códigos de acesso fora de qualquer coisa que visitantes possam baixar.
risco comum
Depois de adicionar uma nova tabela de perfil, o app passa a mostrar todos os perfis porque essa tabela nunca recebeu regras linha por linha, e ninguém testou com uma segunda conta.
o que fazer agora
Faça hoje um teste com duas contas, peça para a sua IA mostrar as regras linha por linha em cada tabela de usuário e repita a mesma checagem depois de cada atualização.
peça isto à sua IA
Faça uma auditoria deste app para verificar o Supabase Row Level Security e a separação de dados de um jeito seguro para iniciantes. 1) Liste todas as tabelas que guardam dados de usuários. 2) Mostre o campo de dono de cada tabela. 3) Mostre, em linguagem simples, as regras de leitura, criação, alteração e exclusão de cada tabela. 4) Corrija qualquer tabela em que uma pessoa logada possa acessar linhas de outra pessoa. 5) Verifique se senhas, chaves de pagamento e códigos de acesso não estão sendo enviados em arquivos entregues ao navegador. 6) Me dê passos exatos para retestar com duas contas depois de cada mudança.
Checklist rápido
- 01Entre com duas contas de teste diferentes e confirme que cada uma vê apenas os próprios registros.
- 02Abra páginas salvas, pedidos, mensagens, perfis ou reservas com a outra conta de teste e veja o que aparece.
- 03Confirme que todo registro ligado a um usuário tem um campo claro de dono ligado à pessoa logada.
- 04Verifique se criar, editar e apagar funcionam apenas para os itens da própria pessoa.
- 05Cheque se senhas, chaves de pagamento e códigos de acesso ficam fora de arquivos que visitantes podem baixar.
- 06Revise qualquer área de administrador e confirme que ela está separada da experiência normal.
- 07Peça para a sua IA mostrar exatamente onde as regras de separação por usuário estão definidas e testadas.
- 08Repita as mesmas verificações depois de cada nova tela, recurso ou tabela.
FAQ
A tela de entrada basta para proteger os dados dos usuários?
Não. A tela de entrada só identifica a pessoa. Você também precisa de regras que decidam quais linhas salvas essa pessoa pode ver, criar, editar ou apagar.
Qual é o termo do Supabase que eu posso citar para a minha IA?
Depois de entender a ideia simples, o nome técnico é Row Level Security. Quem programa costuma chamar de RLS. Isso significa regras linha por linha para manter cada pessoa dentro dos próprios dados.
Como posso testar isso sem ser programador?
Use duas contas de teste. Crie registros diferentes em cada conta. Depois entre com cada usuário e confira listas, páginas de detalhe, ações de edição e ações de exclusão, uma por uma.
O que a VibeCodeWall faz nesse caso?
A VibeCodeWall verifica o app público por fora e acompanha mudanças importantes ao longo do tempo. Isso pode ajudar a encontrar arquivos expostos ou mudanças visíveis no comportamento público, mas você ainda deve fazer seus próprios testes de separação de dados com duas contas.