Como corrigir uma chave do Supabase exposta
Há dois casos. A chave anon é feita para ser pública — se for só ela que está exposta, a RLS é a sua correção. Mas se a sua chave service_role chegou ao cliente ou a um repositório público, seu banco de dados inteiro está exposto e você precisa rotacioná-la imediatamente.
Passo a passo
- 1
Identifique qual chave vazou
A chave anon (pública) pode ser exposta sem problema. A chave service_role não — ela ignora a RLS e concede acesso total.
- 2
Se a chave service_role vazou, rotacione agora
Em Supabase → Project Settings → API, gere novamente a chave service_role e atualize-a apenas nas variáveis de ambiente do lado do servidor.
- 3
Remova a chave do código do cliente e do histórico do git
Tire-a do bundle e expurgue-a do histórico do git (caso contrário, ela permanece em commits antigos).
- 4
Trave com RLS de qualquer forma
Ative a segurança em nível de linha para que uma chave anon vazada não consiga ler seus dados mesmo se exposta.
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: