ClearedToShip
critical

Como ativar a segurança em nível de linha no Supabase

O problema

Uma tabela do Supabase sem RLS fica totalmente legível por qualquer pessoa que tenha sua chave anon — que vai no seu front-end. Ativar a RLS corretamente é o passo mais importante para proteger um app Supabase.

Passo a passo

  1. 1

    Ative a RLS em cada tabela de dados

    No painel do Supabase, ative a segurança em nível de linha em cada tabela. Uma vez ativada e sem política, o acesso é negado por padrão — exatamente o que você quer.

  2. 2

    Adicione uma política de SELECT delimitada ao usuário

    Crie uma política como CREATE POLICY "own rows" ON your_table FOR SELECT USING (auth.uid() = user_id);

  3. 3

    Repita para INSERT / UPDATE / DELETE

    Cada operação precisa da própria política. Use WITH CHECK nas escritas para impedir que usuários escrevam linhas que não deveriam possuir.

  4. 4

    Teste o acesso autenticado e o anônimo

    Confirme que uma requisição anônima não retorna nada e que um usuário autenticado vê apenas as próprias linhas.

Quer ver isso verificado, não só corrigido?

Corrigir é só o primeiro passo. Uma revisão do ClearedToShip confirma que a correção realmente se sustenta e te dá uma liberação assinada e com seguro para lançar. Entre no acesso antecipado:

Varredura gratuita de prontidão para o lançamento
Quero minha varredura grátis