Secure Firebase Database Permissions
Autorisations Sécurisées de Base de Données Firebase
Description
Les règles de la base de données en temps réel Firebase (Firebase Realtime Database Rules) déterminent qui a un accès en lecture et en écriture à votre base de données, comment vos données sont structurées et quels index existent.
Les autorisations de base de données non sécurisées sont un problème courant, conduisant à un accès non autorisé à votre base de données. Firebase fournit des outils pour appliquer l'authentification, l'autorisation et même la validation des données.
Les problèmes de mauvaise configuration courants suivants sont à éviter :
Accès en lecture et écriture à tous les utilisateurs :
{
"rules": {
".read": true,
".write": true
}
}
Tout utilisateur connecté a un accès en lecture et en écriture à l'ensemble de votre base de données :
{
"rules": {
".read": "auth !== null",
".write": "auth !== null"
}
}
Les règles de la base de données en temps réel fonctionnent en cascade, les règles situées à des chemins parents plus superficiels remplaçant les règles situées à des nœuds enfants plus profonds. N'oubliez pas que lorsque vous écrivez une règle sur un nœud enfant, elle ne peut accorder que des privilèges supplémentaires. Vous ne pouvez pas affiner ou révoquer l'accès aux données à un chemin plus profond dans votre base de données.
{
"rules": {
"foo": {
// allows read to /foo/*
".read": "data.child('baz').val() === true",
"bar": {
/* ignored, since read was allowed already */
".read": false
}
}
}
}
Recommandation
Cette entrée est sécurisée et aucune recommandation ne s'applique.