Do banco ao ambiente online
Supabase, regras e deploy
Separe ambientes, proteja chaves e publique sem expor o banco.
Objetivo
Reconhecer variáveis de ambiente, RLS e a diferença entre desenvolvimento e produção.
Pré-requisito
SQL, autenticação e APIs.
O que é
Conceito sem complicação
Supabase reúne PostgreSQL, autenticação, storage e APIs. O deploy deve usar variáveis de ambiente e políticas de acesso coerentes com cada perfil.
Uma aplicação online precisa proteger segredos e garantir que cada usuário acesse somente o que lhe pertence.
A URL do banco é o endereço do prédio; a chave é o crachá; a RLS define quais salas cada pessoa pode abrir.
politica_rls.sql
sql
ALTER TABLE progresso ENABLE ROW LEVEL SECURITY;
CREATE POLICY "Aluno vê o próprio progresso"
ON progresso FOR SELECT
USING (auth.uid() = user_id);Linha por linha
ENABLE ROW LEVEL SECURITY ativa a proteção por registro.
CREATE POLICY nomeia uma regra auditável.
FOR SELECT aplica a regra às leituras.
auth.uid() representa o usuário autenticado.
A comparação restringe o acesso aos próprios dados.
Erro comum
Colocar service_role no código do navegador; essa chave deve existir apenas no servidor.
Exercício guiado
Explique por que uma chave pública não substitui políticas RLS.
Agora sozinho
Descreva os ambientes development, staging e production e o dado permitido em cada um.
Preciso de uma dica
Pense em isolamento, segredos e dados reais versus dados DEMO.
Teste seu conhecimento
Onde uma chave administrativa deve ficar?
Progresso da aula