Sei sulla pagina 1di 2

24/12/2017 Primeros pasos con las reglas de seguridad de Storage  |  Firebase

Primeros pasos con las reglas de seguridad de Storage


En las apps típicas, los programadores deben crear y mantener servidores que realizan tareas de autenticación, autorización y
validación de datos, además de la lógica empresarial del programador. Las apps que usan Cloud Storage para Firebase usan
Firebase Authentication y reglas de seguridad de Firebase para Cloud Storage a n de administrar la autenticación, la validación de
datos y la autenticación sin servidor.

Puedes usar Cloud Storage y las reglas de seguridad de Storage para enfocarte en ofrecer una excelente experiencia a los usuarios sin
preocuparte por administrar una infraestructura o escribir un código complejo de autenticación y autorización del servidor.

Información general

Las reglas de seguridad de Storage se usan para determinar quién tiene acceso de lectura y escritura a los archivos almacenados en
Cloud Storage, además de cómo se estructuran los archivos y qué metadatos contienen. El tipo básico de regla es allow, que permite
operaciones read y write, si se cumple una condición que puede especi carse opcionalmente. Estos son algunos ejemplos de reglas:

// Rules can optionally specify a condition


allow write: if <condition>;

Las reglas coinciden (match) con las rutas de archivo que representan referencias de Cloud Storage
 (https:// rebase.google.com/docs/storage/web/create-reference). Las reglas pueden buscar coincidencias (match) en una o más rutas de
acceso y más de una regla puede buscar coincidencias (match) en la ruta de acceso en una solicitud (request) determinada:

// Rules match specific paths


match /images/profilePhoto.png {
  allow write: if <condition>;
}

match /images/croppedProfilePhoto.png {
  allow write: if <other_condition>;
}

El contexto de la evaluación de la regla también se expone mediante los objetos request y resource, que proporcionan información
como el contexto de Auth (request.auth) y el tamaño del objeto existente (resource.size).

// Rules can specify conditions that consider the request context


match /images/profilePhoto.png {
  allow write: if request.auth != null && request.resource.size < 5 * 1024 * 1024;
}

Nota: Cloud Storage usa el mismo depósito de Google Cloud Storage que la app predeterminada de Google App Engine, por lo que es posible que las
reglas de seguridad de Storage (https:// rebase.google.com/docs/storage/security/index) se apliquen a cualquier archivo que exista en esa app.

Para obtener más información sobre las reglas de seguridad de Storage, consulta la sección Protege archivos
 (https:// rebase.google.com/docs/storage/security/secure- les).

Ejemplos de reglas

Las reglas de seguridad de Storage deben especi car en primer lugar el service (en nuestro caso, firebase.storage) y el depósito de
Cloud Storage (a través de match /b/{bucket}/o) con el que se comparan las reglas. Las reglas predeterminadas requieren

https://firebase.google.com/docs/storage/security/start 1/2
24/12/2017 Primeros pasos con las reglas de seguridad de Storage  |  Firebase

Firebase Authentication. Sin embargo, a continuación tenemos algunos ejemplos de otras reglas comunes con diferente control de
acceso.

PREDETERMINADO PÚBLICO USUARIO PRIVADO

// Only authenticated users can read or write to the bucket


service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth != null;
    }
  }
}

Durante el desarrollo, puedes usar las reglas públicas, en lugar de las predeterminadas, para que cualquier usuario pueda realizar
operaciones de lectura y escritura en tus archivos. Esto es muy útil para la creación de prototipos, ya que puedes comenzar sin
con gurar Firebase Authentication. Sin embargo, debido a que Cloud Storage comparte un depósito con tu app predeterminada de
Google App Engine, esta regla también hace que los datos de esa app sean públicos.

Con las reglas de usuario, puedes darle su propio almacenamiento de archivos personal a cada uno de tus usuarios autenticados.
También puedes bloquear por completo tus archivos mediante las reglas privadas, pero debes tener en cuenta que estas reglas
impiden que los usuarios lean o escriban mediante Cloud Storage. Es posible que los usuarios que acceden a archivos desde tu app de
Google App Engine o las API de GCS sí tengan acceso.

Antes del lanzamiento, asegúrate de evaluar tus reglas para que proporcionen el máximo nivel de seguridad que necesita tu aplicación.

Edita reglas

Cloud Storage proporciona una manera fácil de editar las reglas de seguridad de Storage a través de la pestaña Reglas en la sección
Storage de Firebase console  (//console. rebase.google.com/). En la pestaña Reglas, puedes ver y editar tus reglas actuales de manera
fácil y rápida. Haz clic en Publicar o guarda el archivo (ctrl/cmd + s) para implementar estas reglas. Las reglas se suben de
inmediato a los servidores de Cloud Storage, pero pueden tardar hasta cinco minutos antes de entrar en vigencia.

Obtén más información acerca de cómo funciona la seguridad basada en archivos en la sección Protege archivos
 (https:// rebase.google.com/docs/storage/security/secure- les) o conoce cómo funciona la seguridad basada en usuarios en la sección
Seguridad del usuario (https:// rebase.google.com/docs/storage/security/user-security).

Nota: La documentación de referencia detallada está disponible en la referencia de la API de las reglas de seguridad de Firebase para Cloud Storage
 (https:// rebase.google.com/docs/reference/security/storage).

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License (http://creativecommons.org/licenses/by/3.0/),
and code samples are licensed under the Apache 2.0 License (http://www.apache.org/licenses/LICENSE-2.0). For details, see our Site Policies
 (https://developers.google.com/terms/site-policies). Java is a registered trademark of Oracle and/or its a liates.

Última actualización: Octubre 2, 2017

https://firebase.google.com/docs/storage/security/start 2/2

Potrebbero piacerti anche