Regras de segurança do Firebase para copiar: dados só do dono, leitura pública, papéis de admin e validação no Firestore, Storage e Realtime Database, além de como testá-las.
As regras de segurança do Firebase decidem quem pode ler e escrever cada dado do seu app. Comece todo arquivo do Firestore com rules_version = '2', libere o acesso só quando request.auth estiver definido, compare request.auth.uid com o dono do documento e verifique os campos recebidos com request.resource.data. Teste com o emulador antes de fazer o deploy.
As variáveis que você mais usa em cada produto
Se o seu app, loja ou área de membros guarda dados no Firebase, as regras são a única coisa entre os registros dos seus clientes e qualquer pessoa com a config pública do seu projeto. As receitas abaixo cobrem os casos de que a maioria dos apps pequenos precisa. Filtre por produto, copie uma e troque os nomes das coleções pelos seus.
Uma das duas opções iniciais ao criar um banco de dados. O Firebase descreve o modo de teste como bom para começar, mas diz que ele permite que qualquer pessoa leia e sobrescreva os seus dados. O modo de produção nega todas as leituras e gravações de clientes mobile e web até você escrever regras.
Procure uma condição que compara request.time com uma data fixa, como request.time < timestamp.date(2026, 11, 1). Quando essa data passa, toda requisição falha. Substitua por regras de verdade em vez de adiar a data.
O Firebase documenta um limite de 10 chamadas de acesso a documentos para requisições e consultas de um único documento, e 20 para leituras de vários documentos, transações e gravações em lote. Passar disso resulta num erro de permissão negada.
Não. As regras protegem requisições de clientes mobile e web. O Firebase afirma que as bibliotecas de cliente de servidor ignoram todas as Cloud Firestore Security Rules, então valide as entradas no código do servidor separadamente.
Inicie o emulador com firebase emulators:start --only firestore e escreva testes com o pacote @firebase/rules-unit-testing, usando assertSucceeds e assertFails para ações permitidas e bloqueadas.
Estes padrões aparecem em projetos iniciais e tutoriais. Cada um deixa os dados abertos.
Regras arriscadas e substitutas mais seguras
Rode o emulador do Firestore e confira se o dono consegue gravar e um estranho não.
Usa um project id de demonstração para que nada chegue a um banco real. Rode enquanto firebase emulators:start --only firestore estiver em execução.
Cada usuário lê e edita apenas o documento cujo id é igual ao seu id de usuário.
Qualquer pessoa pode ler o catálogo de produtos; só usuários cujo perfil tem o papel admin podem alterá-lo.
Um cliente só pode criar um pedido para si mesmo, com total positivo e um status conhecido, e não pode editá-lo depois.
Edições de perfil só são permitidas quando o campo de papel continua exatamente como estava.
Os arquivos ficam na pasta de cada usuário; os uploads precisam ser imagens menores que 5MB, e qualquer pessoa logada pode vê-las.
As regras do Realtime Database são em JSON. $uid captura a chave; newData é o valor sendo gravado.
Mostrar receitas para
Todos os produtos
Cloud Firestore
Cloud Storage
Realtime Database
{n} receitas exibidas
Comece grátis · Sem cartão de crédito