Firebase Security Rules

Utilisez nos règles de sécurité Firebase flexibles et extensibles pour sécuriser vos données dans Cloud Firestore, Firebase Realtime Database et Cloud Storage

Firebase Security Rules se situe entre vos données et les utilisateurs malveillants. Vous pouvez écrire des phrases simples ou des règles complexes qui protègent les données de votre application avec le niveau de précision spécifiques à votre application.

Levier de Firebase Security Rules des langages de configuration extensibles et flexibles pour définir quelles données vos utilisateurs peut accéder pour Realtime Database, Cloud Firestore et Cloud Storage. Les Firebase Realtime Database Security Rules utilisent le format JSON dans les définitions de règles, tandis que Cloud Firestore Security Rules et Firebase Security Rules pour Cloud Storage exploitent une conçu pour s'adapter à des structures spécifiques aux règles complexes.

En savoir plus sur la configuration de Rules pour des produits Firebase spécifiques que vous utilisez dans votre application, et en quoi le comportement de Rules diffère selon les Firebase produits.

Commencer

Capacités clés

Flexibilité Rédigez des règles personnalisées qui ont du sens pour la structure et le comportement de votre application. Rules utilisent des langages qui vous permettent d'exploiter vos propres données pour autoriser l'accès.
Précision Vous pouvez définir des règles aussi larges qu'étroites selon vos besoins.
Sécurité indépendante Parce que les Rules sont définies en dehors de votre application (dans la console Firebase ou Firebase CLI), les clients ne sont pas responsables de l’application de la sécurité, les bogues ne compromettent pas les données et vos données sont toujours protégées.

Comment fonctionnent-ils ?

Firebase Security Rules fonctionnent en mettant en correspondance un modèle avec les chemins d'accès de la base de données, puis en appliquant des conditions personnalisées pour permettre l'accès aux données à ces chemins. Tous les Rules des produits Firebase comportent un composant de mise en correspondance de chemin d'accès et une instruction conditionnelle permettant d'accéder en lecture ou en écriture. Vous devez définir Rules pour chaque produit Firebase utilisé dans votre application.

Pour Cloud Firestore et Cloud Storage, Rules utilise les éléments suivants : syntaxe:

service <<name>> {
  // Match the resource path.
  match <<path>> {
    // Allow the request if the following conditions are true.
    allow <<methods>> : if <<condition>>
  }
}

Pour Realtime Database, la méthode Rules basée sur JSON utilise la syntaxe suivante:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

Les instructions Rules sont appliquées en tant qu'instructions OR, et non en tant qu'instructions AND. Par conséquent, si plusieurs règles correspondent à un chemin d'accès, et si l'une des correspondances accorde l'accès, Rules accorde l'accès aux données à ce chemin d'accès. Par conséquent, si une règle large accorde l'accès aux données, vous ne pouvez pas restreindre avec une règle plus spécifique. Vous pouvez toutefois éviter ce problème en vous assurant Les Rules ne se chevauchent pas trop. Chevauchement de l'indicateur Firebase Security Rules dans votre les chemins correspondants en tant qu'avertissements du compilateur.

Firebase Security Rules peut également utiliser Authentication pour accorder des autorisations basées sur l'utilisateur. conditions que vous définissez peuvent être très basiques ou incroyablement complexes. En savoir plus sur la langue et le comportement Rules avant de commencer à écrire Rules.

Chemin d'accès de l'exécution

Intégrer les SDK du produit Configurez Cloud Firestore, Cloud Storage ou Realtime Database pour votre l'application.
Écrire votre Firebase Security Rules En savoir plus sur le fonctionnement de Rules et Configurez des Rules de base
Tester votre Firebase Security Rules Utilisez les émulateurs Realtime Database et Cloud Firestore pour tester le fonctionnement et valider vos règles avant de les déployer en production.
Déployer votre Firebase Security Rules Utilisez la console Firebase ou la CLI Firebase pour déployer vos règles en production.

Étapes suivantes