No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

1D
5H
33M
26S
Curso de Firebase 5 para Web

Curso de Firebase 5 para Web

Juan Guillermo Gómez Torres

Juan Guillermo Gómez Torres

Reglas de seguridad para el almacenamiento

24/32
Recursos

Así como las reglas de seguridad de la base de datos en Firestore, el servicio de Firebase Storage nos permite limitar el acceso de los usuarios a ciertos archivos especiales de la aplicación. Todas las reglas de seguridad en cualquier servicio de Firebase se escriben de la misma manera.

En esta clase vamos a limitar la subida de archivos a usuarios autenticados y solo permitir el almacenamiento si los archivos son de tipo imagen u ocupan menos de 5 megas de almacenamiento:

match /imgPosts/{userId}/{imgId} {
        allow write: if request.resource.size < 5 * 1024 * 1024
                && request.resource.contentType.matches('image/.*')
                && request.auth.uid != null
                && request.auth.uid == userId
}

Aportes 9

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Buen dia companeros, segui el ejemplo de las reglas de firebase storage pero no me deja subir nada, aun estando auntenticado:

Estas son las reglas:

¿Porque en storage aunque las reglas estén definidas solo para usuarios autenticados, las imagenes de los post se siguen visualizando aunque este sin logearme?

rules_version = '2';
service firebase.storage {
  match /b/{bucket}/o {
    match /imgsPosts/{allPaths=**} {
      allow read: if true;
    }
    match /imgsPosts/{userId}/{imgId} {
        allow write: if request.resource.size < 5 * 1024 * 1024
                && request.resource.contentType.matches('image/.*')
                && request.auth.uid != null
                && request.auth.uid == userId
		}
  }
}

¿Como puedo quitar el error de? :

has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource. If an opaque response serves your needs, set the request’s mode to ‘no-cors’ to fetch the resource with CORS disabled.

Donde puedo aprendar mas de estas reglas? Quisiera hacer hacer una donde si el archivo ya se encuentra en la storage este no se pueda repetir

Esta debe ser las reglas para el storage, en lo que muestra el profesor esta con imgPosts, pero en el codigo que se realizo nosotros creamos como imgsPosts

rules_version = '2';
service firebase.storage {
  match /b/{bucket}/o {
    match /imgsPosts/{allPaths=**} {
      allow read: if true;
    }
    match /imgsPosts/{userId}/{imgId}{
    	allow write:if request.resource.size < 5 * 1024 * 1024
      			&& request.resource.contentType.matches('image/.*')
            && request.auth.uid != null
            && request.auth.uid == userId
    }
  }
}

Alguien seria amable de explicarme como determino 5 * 1024 * 1024 😕?

Sigo pensando que las reglas de seguridad de Google son lo mismo que escribir código backend jaja es como aprender un lenguaje de programación totalmente nuevo

Pero algo que no me gusta es que no puedes debuggear, por ejemplo, no me dejaba subir la imagen por falta de permisos, y quería ver cuál era la condición que estaba fallando, y no podía debuggear, al final la condición era el límite de peso ya que había escrito mal el .size