Partage
  • Partager sur Facebook
  • Partager sur Twitter

Firebase permission denied

Cours Angular et firebase - TP book

    9 décembre 2018 à 13:25:21

    Bonjour à tous,

    je suis en train de suivre le tuto de la gestion des livres dans le cours Angular.

    Tout est ok de mon coté mais j'ai problème au moment de l'insertion dans la DB firebase. 

    Je regarde la console et j'ai ceci : 

    index.esm.js:74 [2018-12-09T12:11:12.433Z]  @firebase/database: FIREBASE WARNING: set at /books failed: permission_denied 
    
    ERROR Error: Uncaught (in promise): Error: PERMISSION_DENIED: Permission denied
    Error: PERMISSION_DENIED: Permission denied
    ...

    bizarre car j'autorise tout dans firebase:

    service cloud.firestore {
      match /databases/{database}/documents {
        match /{document=**} {
          allow read, write;
        }
      }
    }

    j'ai même essayé ceci après avoir créer une collection /books dans firebase en ajoutant un auteur et un titre

    service cloud.firestore {
      match /databases/books {
      
          allow read, write;
        
      }
    }

    Si quelqu'un à une idée ce serait sympa car je trouve que des règle obsolètes sur le net.

    Merci!



    • Partager sur Facebook
    • Partager sur Twitter
      11 décembre 2018 à 5:30:24

      Salut, voici une solution toute simple, au niveau de la base de données, utilise Realtime Database et au niveau des règles change false en true, ça devrait passer
      • Partager sur Facebook
      • Partager sur Twitter
        27 mars 2019 à 14:22:49

        Salut.

        Même problème que raphp.

        La solution de TohouriGnahou fonctionne, mais comment faire du coup avec les règles read et write sur false pour avoir une application sécurisé avec la base de données ?

        • Partager sur Facebook
        • Partager sur Twitter
          19 juin 2019 à 21:15:07

          Même problème ... j'ai suivi le tutoriel sur la création des books, et je reçois une sorte de 403 depuis Firebase alors que j'ai bien authentifié mon utilisateur.

          Sur ce ticket : https://stackoverflow.com/questions/37403747/firebase-permission-denied, les participants recommandent soit de modifier les droits en lecture / écriture, ce qui est un non sens, soit d'encapsuler la transaction DB dans le callback de l'authentification, ce qui n'est vraiment pas pratique.

          Du coup j'ai investigué un peu, et il suffit en fait de modifier les règles d'accès à la DB sur Firebase, ce qui se tient bien finalement ^^

          Une sécurisation très (trop) simple, serait ceci :

          {

            "rules": {

              ".read": "auth !== null",

              ".write": "auth !== null"

            }

          }

          Le souci dans ce cas, ça serait que n'importe quel user authentifié ayant l'accès DB pourrait accéder aux données, il faut donc sécuriser un peu plus si c'est pour de la production.

          Voir : https://firebase.google.com/docs/reference/security/database/?authuser=0#variables

          -
          Edité par stevelebleu1979 19 juin 2019 à 21:26:43

          • Partager sur Facebook
          • Partager sur Twitter
            3 juillet 2019 à 8:26:18

            Salut Steve,

            J'ai le même souci que vous, pourrez tu nous donner toute ta conf ? Es tu en Cloud FIrestorm ou en real database ?

            Merci
            • Partager sur Facebook
            • Partager sur Twitter
              3 juillet 2019 à 17:24:12

              Bonjour tout le monde,

              Si vous souhaitez suivre le code du cours, il faut utiliser le Realtime Database et non Cloud Firestore, car ce dernier n'emploie pas du tout les mêmes méthodes.

              Ensuite si vous souhaitez apprendre à sécuriser une application Firebase, je vous invite à lire les parties correspondantes de la documentation, elles sont super bien écrites.

              Bonne journée !

              • Partager sur Facebook
              • Partager sur Twitter

              Firebase permission denied

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              • Editeur
              • Markdown