Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

474
Visualizações
¿Por qué recibo un error de permisos insuficientes al intentar eliminar un elemento de matriz de Firestore, pero puedo eliminar todo el documento?

Tengo una colección en mi firestore llamada "informes"

uno de los campos en el mapa de informes es una matriz de objetos. Estos objetos hacen referencia a una foto en el almacenamiento en la nube. Se ven así (la URL apunta al almacenamiento en la nube):

 { id: uid value url: some-url }

Mis reglas de Firebase están configuradas así para el documento de informes:

 match /databases/{database}/documents { match /reports/{report} { allow read: if request.auth != null && request.auth.uid == resource.data.userID; allow create: if request.auth != null && request.resource.data.userID == request.auth.uid; allow delete, update: if request.auth != null && request.auth.uid == resource.data.userID; } }

por alguna razón, puedo eliminar todo el documento si quiero probar que tengo permiso de eliminación... pero cuando intento eliminar un elemento de la matriz de fotos de esta manera:

 const reportRef = db.collection('reports') reportRef.doc(activeReport.id).update({ photos: firebase.firestore.FieldValue.arrayRemove(photoToDelete) })

Termino con un error que dice:

Rechazo de promesa no controlado: FirebaseError: permisos faltantes o insuficientes

¿Por qué? ¿No he dado permiso para actualizar este documento correctamente?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Vaya a Base de datos -> Reglas ->

Para desarrollo:

Cambiar allow read, write: if falso; a verdadero;

Nota: Es una solución rápida solo para fines de desarrollo porque desactivará toda la seguridad. Por lo tanto, no se recomienda para la producción.

Para la producción:

Si se autentica desde firebase: Change allow read, write: if falso; a request.auth != null;

about 4 years ago · Juan Pablo Isaza Relatório

0

En este caso, se pasó un parámetro incorrecto. Necesitaba pasar activeReport, no activeReport.id.

Este es un mensaje de error engañoso. Eliminaría esta pregunta, pero stackoverflow no quiere que lo haga porque se ha publicado una respuesta aquí. Tonto.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda