获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

Reglas de seguridad de Firebase

Utilice nuestras Reglas de seguridad de Firebase flexibles y ampliables para proteger sus datos en Cloud Firestore, Firebase Realtime Database y Cloud Storage.

Las reglas de seguridad de Firebase se interponen entre sus datos y los usuarios maliciosos. Puede escribir reglas simples o complejas que protejan los datos de su aplicación al nivel de granularidad que requiere su aplicación específica.

Las reglas de seguridad de Firebase aprovechan lenguajes de configuración extensibles y flexibles para definir a qué datos pueden acceder sus usuarios para Realtime Database, Cloud Firestore y Cloud Storage. Las reglas de base de datos en tiempo real de Firebase aprovechan JSON en las definiciones de reglas, mientras que las reglas de seguridad de Cloud Firestore y las reglas de seguridad de Firebase para almacenamiento en la nube aprovechan un lenguaje único creado para adaptarse a estructuras específicas de reglas más complejas.

Obtenga más información sobre cómo configurar reglas para los productos específicos de Firebase que usa en su aplicación y cómo el comportamiento de las reglas difiere entre los productos de Firebase.

Capacidades clave

Flexibilidad Escriba reglas personalizadas que tengan sentido para la estructura y el comportamiento de su aplicación. Las reglas usan lenguajes que le permiten aprovechar sus propios datos para autorizar el acceso.
granularidad Sus reglas pueden ser tan amplias o estrechas como necesite.
seguridad independiente Debido a que las reglas se definen fuera de su aplicación (en Firebase console o Firebase CLI), los clientes no son responsables de hacer cumplir la seguridad, los errores no comprometen los datos y sus datos siempre están protegidos.

¿Cómo trabajan?

Las reglas de seguridad de Firebase funcionan al hacer coincidir un patrón con las rutas de la base de datos y luego aplicar condiciones personalizadas para permitir el acceso a los datos en esas rutas. Todas las reglas de los productos de Firebase tienen un componente de comparación de rutas y una declaración condicional que permite el acceso de lectura o escritura. Debe definir reglas para cada producto de Firebase que use en su aplicación.

Para Cloud Firestore y Cloud Storage, las reglas usan la siguiente sintaxis:

service <<name>> {
  // Match the resource path.
  match <<path>> {
    // Allow the request if the following conditions are true.
    allow <<methods>> : if <<condition>>
  }
}

Para Realtime Database, las reglas basadas en JSON usan la siguiente sintaxis:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

Las reglas se aplican como sentencias OR , no sentencias AND . En consecuencia, si varias reglas coinciden con una ruta y cualquiera de las condiciones coincidentes otorga acceso, las reglas otorgan acceso a los datos en esa ruta. Por lo tanto, si una regla amplia otorga acceso a los datos, no puede restringir con una regla más específica. Sin embargo, puede evitar este problema asegurándose de que sus Reglas no se superpongan demasiado. Las reglas de seguridad de Firebase marcan superposiciones en sus rutas coincidentes como advertencias del compilador.

Las reglas de seguridad de Firebase también pueden aprovechar la autenticación para otorgar permisos basados ​​en el usuario, y las condiciones que establezca pueden ser muy básicas o increíblemente complejas. Obtenga más información sobre el lenguaje y el comportamiento de las reglas antes de comenzar a escribir reglas.

Ruta de implementación

Integrar los SDK del producto Configure Cloud Firestore , Cloud Storage o Realtime Database para su aplicación.
Escriba sus reglas de seguridad de Firebase Obtenga más información sobre cómo funcionan las reglas y configure algunas reglas básicas
Pruebe sus reglas de seguridad de Firebase Utilice los emuladores Realtime Database y Cloud Firestore para probar el comportamiento de su aplicación y validar sus reglas antes de implementarlas en producción.
Implementa tus reglas de seguridad de Firebase Use Firebase console o Firebase CLI para implementar sus reglas en producción.

Próximos pasos

,

Reglas de seguridad de Firebase

Utilice nuestras Reglas de seguridad de Firebase flexibles y ampliables para proteger sus datos en Cloud Firestore, Firebase Realtime Database y Cloud Storage.

Las reglas de seguridad de Firebase se interponen entre sus datos y los usuarios malintencionados. Puede escribir reglas simples o complejas que protejan los datos de su aplicación al nivel de granularidad que requiere su aplicación específica.

Las reglas de seguridad de Firebase aprovechan lenguajes de configuración extensibles y flexibles para definir a qué datos pueden acceder sus usuarios para Realtime Database, Cloud Firestore y Cloud Storage. Las reglas de base de datos en tiempo real de Firebase aprovechan JSON en las definiciones de reglas, mientras que las reglas de seguridad de Cloud Firestore y las reglas de seguridad de Firebase para almacenamiento en la nube aprovechan un lenguaje único creado para adaptarse a estructuras específicas de reglas más complejas.

Obtenga más información sobre cómo configurar reglas para los productos específicos de Firebase que usa en su aplicación y cómo el comportamiento de las reglas difiere entre los productos de Firebase.

Capacidades clave

Flexibilidad Escriba reglas personalizadas que tengan sentido para la estructura y el comportamiento de su aplicación. Las reglas usan lenguajes que le permiten aprovechar sus propios datos para autorizar el acceso.
granularidad Sus reglas pueden ser tan amplias o estrechas como necesite.
seguridad independiente Debido a que las reglas se definen fuera de su aplicación (en Firebase console o Firebase CLI), los clientes no son responsables de hacer cumplir la seguridad, los errores no comprometen los datos y sus datos siempre están protegidos.

¿Cómo trabajan?

Las reglas de seguridad de Firebase funcionan al hacer coincidir un patrón con las rutas de la base de datos y luego aplicar condiciones personalizadas para permitir el acceso a los datos en esas rutas. Todas las reglas de los productos de Firebase tienen un componente de comparación de rutas y una declaración condicional que permite el acceso de lectura o escritura. Debe definir reglas para cada producto de Firebase que use en su aplicación.

Para Cloud Firestore y Cloud Storage, las reglas usan la siguiente sintaxis:

service <<name>> {
  // Match the resource path.
  match <<path>> {
    // Allow the request if the following conditions are true.
    allow <<methods>> : if <<condition>>
  }
}

Para Realtime Database, las reglas basadas en JSON usan la siguiente sintaxis:

{
  "rules": {
    "<<path>>": {
    // Allow the request if the condition for each method is true.
      ".read": <<condition>>,
      ".write": <<condition>>
    }
  }
}

Las reglas se aplican como sentencias OR , no sentencias AND . En consecuencia, si varias reglas coinciden con una ruta y cualquiera de las condiciones coincidentes otorga acceso, las reglas otorgan acceso a los datos en esa ruta. Por lo tanto, si una regla amplia otorga acceso a los datos, no puede restringir con una regla más específica. Sin embargo, puede evitar este problema asegurándose de que sus Reglas no se superpongan demasiado. Las reglas de seguridad de Firebase marcan superposiciones en sus rutas coincidentes como advertencias del compilador.

Las reglas de seguridad de Firebase también pueden aprovechar la autenticación para otorgar permisos basados ​​en el usuario, y las condiciones que establezca pueden ser muy básicas o increíblemente complejas. Obtenga más información sobre el lenguaje y el comportamiento de las reglas antes de comenzar a escribir reglas.

Ruta de implementación

Integrar los SDK del producto Configure Cloud Firestore , Cloud Storage o Realtime Database para su aplicación.
Escriba sus reglas de seguridad de Firebase Obtenga más información sobre cómo funcionan las reglas y configure algunas reglas básicas
Pruebe sus reglas de seguridad de Firebase Utilice los emuladores Realtime Database y Cloud Firestore para probar el comportamiento de su aplicación y validar sus reglas antes de implementarlas en producción.
Implementa tus reglas de seguridad de Firebase Use Firebase console o Firebase CLI para implementar sus reglas en producción.

Próximos pasos