Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

288
Views
(Nuxtjs+ Firebase Firestore) FirebaseError: permisos faltantes o insuficientes

uso Nuxt.js + Firebase Firestore y trato de obtener datos del nombre de la colección TestCollection pero mostrar

Error al obtener el documento: FirebaseError: permisos faltantes o insuficientes.

aquí está mi colección firestore.

mi servidor local muestra esto.

 Error getting document: FirebaseError: Missing or insufficient permissions. at new n (prebuilt-306f43d8-45d6f0b9.js?a6a6:188) at eval (prebuilt-306f43d8-45d6f0b9.js?a6a6:10426) at eval (prebuilt-306f43d8-45d6f0b9.js?a6a6:10427) at n.onMessage (prebuilt-306f43d8-45d6f0b9.js?a6a6:10449) at eval (prebuilt-306f43d8-45d6f0b9.js?a6a6:10366) at eval (prebuilt-306f43d8-45d6f0b9.js?a6a6:10397) at eval (prebuilt-306f43d8-45d6f0b9.js?a6a6:15160) at eval (prebuilt-306f43d8-45d6f0b9.js?a6a6:15218)

aquí está el método que llama a la colección.

 async testPost(){ try{ await this.$fire.firestore.collection('TestCollection').get() .then((docs) => { console.log('docs:', docs) if (docs) { docs.forEach((doc) => { console.log(doc.data()) }) } else { console.log('No such document!') } }).catch((error) => { console.log('Error getting document:', error) }) }catch (err){ console.log(err) } },

en nuxt.config.js

 modules: [ // https://go.nuxtjs.dev/axios '@nuxtjs/axios', ['@nuxtjs/firebase', { config: { apiKey: process.env.FIREBASE_API_KEY, authDomain: process.env.FIREBASE_AUTH_DOMAIN, projectId: process.env.FIREBASE_PROJECT_ID, storageBucket: process.env.FIREBASE_STORAGE_BUCKET, messagingSenderId: process.env.FIREBASE_MESSAGING_SENDER_ID, appId: process.env.FIREBASE_APP_ID, measurementId: process.env.FIREBASE_MEASUREMENT_ID, }, services: { firestore: true, storage: true, database: true, }, }], ],

en base de datos.rules.json

 { "rules": { "users": { "$uid": { ".read": "$uid === auth.uid", ".write": "false" } }, "cases": { ".read": true } } }

en filetore.rules

 rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if false; } } }
about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Tus reglas de seguridad permiten que nadie lea ningún dato de Firestore:

 match /{document=**} { allow read, write: if false; }

Entonces, el hecho de que su código que intenta leer datos de la base de datos sea rechazado por estas reglas funciona según lo previsto.

Estas son las reglas predeterminadas, por lo que recomiendo leer la documentación sobre cómo proteger su base de datos tanto paraFirestore específicamente como para Firebase en general .


Querrá comenzar con el cambio mínimo en sus reglas que permita que su código funcione, conocido como el principio de privilegio mínimo . Dado el código que compartiste, sería:

 rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if false; } match /TestCollection/{doc} { allow read: if true; } } }

Así que ahora permitimos que cualquier persona en el mundo lea TestCollection completo, ya que eso es lo que parece hacer su código, pero aún no permitimos todas las demás operaciones.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!