Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Primeiros passos com as regras de segurança do Firebase

# Variável para alternador de produtos — RTDB, Firestore e Storage combinados #} Defina dados para indexação

As regras de segurança do Firebase fornecem proteção robusta e totalmente personalizável para seus dados no Cloud Firestore, Realtime Database e Cloud Storage. É fácil começar a usá-las e proteger seus dados e seu aplicativo contra usuários mal-intencionados. Basta seguir as etapas deste guia.

Entender a linguagem das regras de segurança do Firebase

Antes de começar a criar regras de segurança, dedique um tempo para analisar a linguagem específica delas nos produtos do Firebase que você está usando. O Realtime Database utiliza uma sintaxe semelhante a JavaScript e uma estrutura JSON.

Comece aprendendo a sintaxe principal da linguagem das regras de segurança do Firebase.

Configurar o Authentication

Caso ainda não tenha feito isso, adicione o Firebase Authentication ao seu app. O Firebase Authentication é compatível com muitos métodos comuns de autenticação e se integra às regras de segurança do Firebase para fornecer recursos de verificação abrangentes.

É possível configurar outras informações de autenticação que sejam personalizadas para seu aplicativo.

Saiba mais sobre as regras de segurança do Firebase e o Firebase Authentication.

Definir suas estruturas de dados e regras

Definir dados de segurança

O modo como você estrutura os dados pode afetar a maneira como as regras são estruturadas e implementadas. Ao definir as estruturas de dados, avalie as implicações que elas podem ter na estrutura das regras.

Por exemplo, no Realtime Database, é possível incluir um campo que denota um papel específico para cada usuário. Dessa forma, suas regras poderão ler esse campo e usá-lo para conceder acesso com base em papéis.

Ao definir as arquiteturas de dados e regras, lembre-se de que as regras são aplicadas ou não em cascata, dependendo do seu produto. Com o Realtime Database, as regras funcionam de cima para baixo, com regras em níveis menos profundos que substituem regras de níveis mais profundos. Se uma regra conceder permissões de leitura ou gravação em um caminho específico, ela também concederá acesso a todos os nós filhos nesse caminho. Por outro lado, com o Cloud Firestore e o Cloud Storage, as regras aplicam-se apenas aos níveis especificados da hierarquia de dados, e você escreve regras explícitas para controlar o acesso a níveis diferentes.

Acessar as regras

Para visualizar as regras atuais, use a Firebase CLI ou o Console do Firebase. Lembre-se de editar as regras usando o mesmo método de maneira consistente para evitar substituir as atualizações por engano. Caso você não tenha certeza de que as regras definidas localmente correspondem às atualizações mais recentes, saiba que o Console do Firebase sempre exibe a versão mais recente implantada das regras de segurança do Firebase.

Para acessar suas regras no Console do Firebase, selecione seu projeto e, no painel de navegação à esquerda, clique em Realtime Database. Clique em Regras quando estiver no banco de dados ou no bucket de armazenamento correto.

Para acessar suas regras na Firebase CLI, acesse o arquivo de regras mencionado no seu arquivo firebase.json.

Escrever regras básicas

Ao desenvolver seu app e entender as regras, tente implementá-las para lidar com alguns casos de uso básicos, incluindo as seguintes:

  • Somente o proprietário do conteúdo: restringe o acesso ao conteúdo por usuário.
  • Acesso misto: restringe o acesso de gravação por usuário, mas permite acesso de leitura público.
  • Acesso com base em atributos: restringe o acesso a um grupo ou tipo de usuário.

Testar suas regras

Ao configurar suas regras de segurança no Console do Firebase, é possível usar o Firebase Rules Playground para validar rapidamente o comportamento. No entanto, recomendamos testes mais detalhados com o Pacote do emulador local antes de implantar suas alterações na produção.

Implantar regras

Use o Console do Firebase ou a Firebase CLI para implantar as regras em produção. Siga as etapas descritas em Gerenciar e implantar as regras de segurança do Firebase.