En esta página, se describen las prácticas recomendadas más importantes para mantener la seguridad en distintos entornos, pero consulta la Lista de tareas de seguridad a fin de obtener orientación más detallada y completa sobre seguridad y Firebase.
Seguridad para entornos de preproducción
Uno de los beneficios de separar los entornos en diferentes proyectos de Firebase es que si alguna persona malintencionada quiere acceder a tus entornos de preproducción, no podrá disponer de los datos reales de los usuarios. Estas son las precauciones de seguridad más importantes que debes considerar para los entornos de preproducción:
Limita el acceso a los entornos de preproducción. En el caso de las apps para dispositivos móviles, usa App Distribution (o un producto similar) a fin de distribuir una app a un conjunto específico de personas. Es más difícil restringir las aplicaciones web; es recomendable que configures una función de bloqueo para entornos de preproducción que restrinja el acceso a los usuarios con direcciones de correo electrónico específicas de tu dominio. Si usas Firebase Hosting, configura tus flujos de trabajo de preproducción para usar URLs de vista previa temporales.
Cuando un entorno no necesita ser persistente y solo lo usa una persona (o, en el caso de las pruebas, una máquina), utiliza Firebase Local Emulator Suite. Estos emuladores son más seguros y rápidos, ya que pueden funcionar por completo en el host local, en lugar de usar recursos de nube.
Asegúrate de configurar las Reglas de seguridad de Firebase en los entornos de preproducción como lo haces en la producción. En general, las reglas deben ser las mismas en todos los entornos, con la salvedad de que, como las reglas cambian con el código, es posible que haya algunas más antiguas en la canalización que aún no existan en producción.
Seguridad para entornos de producción
Los datos de producción son siempre blanco de ataques, incluso si la app está oculta. Si sigues estos lineamientos, no será imposible que usuarios malintencionados obtengan tus datos, pero será más difícil que lo logren:
Habilita y aplica la Verificación de aplicaciones en todos los productos compatibles que usas. Esta función se asegura de que las solicitudes a tus servicios de backend provengan de apps genuinas. Para usarla, debes registrar cada versión de la app con la Verificación de aplicaciones. Es más fácil configurarla antes de tener usuarios, por lo que debes hacerlo lo antes posible.
Escribe Reglas de seguridad de Firebase sólidas. Realtime Database, Cloud Firestore y Cloud Storage se basan en reglas configuradas por el desarrollador para definir quiénes pueden acceder o no a los datos. Es fundamental para tu seguridad que escribas reglas adecuadas. Si no sabes bien cómo hacerlo, comienza con este codelab.
Revisa la Lista de tareas de seguridad para obtener más recomendaciones sobre la seguridad de los entornos de producción.