Pautas generales de seguridad para diferentes entornos de flujo de trabajo de desarrollo

Esta página describe las mejores prácticas más importantes para la seguridad en todos los entornos, pero revise la Lista de verificación de seguridad para obtener orientación más detallada y exhaustiva sobre la seguridad y Firebase.

Seguridad para entornos de preproducción

Una ventaja de separar entornos en diferentes proyectos de Firebase es que un actor malintencionado que pueda acceder a sus entornos previos a la producción no podrá acceder a datos reales del usuario. Estas son las precauciones de seguridad más importantes que se deben tomar en los entornos de preproducción:

  • Limite el acceso a entornos de preproducción. Para aplicaciones móviles, utilice App Distribution (o algo similar) para distribuir una aplicación a un grupo específico de personas. Las aplicaciones web son más difíciles de restringir; Considere configurar una función de bloqueo para los entornos previos a la producción que restrinja el acceso a usuarios con direcciones de correo electrónico específicas de su dominio. O, si usas Firebase Hosting, configura tus flujos de trabajo de preproducción para usar URL de vista previa temporales .

  • Cuando no es necesario conservar un entorno y solo lo utiliza una persona (o, en el caso de las pruebas, una máquina), utilice Firebase Local Emulator Suite . Estos emuladores son más seguros y rápidos porque pueden funcionar completamente en localhost en lugar de utilizar recursos de la nube.

  • Asegúrese de tener las reglas de seguridad de Firebase configuradas en entornos de preproducción, tal como lo hace en prod. En general, las reglas deben ser las mismas en todos los entornos, con la salvedad de que, dado que las reglas cambian con el código, puede haber reglas en etapas anteriores del proceso que aún no existen en producción.

Seguridad para entornos de producción

Los datos de producción son siempre un objetivo, incluso si la aplicación es oscura. Seguir estas pautas no imposibilita que un actor malintencionado obtenga sus datos, pero lo hace más difícil:

  • Habilite y aplique App Check para todos los productos que esté utilizando y que lo admitan. App Check se asegura de que las solicitudes a sus servicios backend provengan de sus aplicaciones originales. Para usarlo, debe registrar cada versión de su aplicación con App Check. Es más fácil de configurar antes de tener usuarios, así que configúrelo lo antes posible.

  • Escriba reglas de seguridad sólidas de Firebase . Realtime Database, Cloud Firestore y Cloud Storage dependen de reglas configuradas por el desarrollador para hacer cumplir quién debería y quién no debería poder acceder a los datos. Es esencial para su seguridad que escriba buenas reglas. Si no está seguro de cómo hacerlo, comience con este codelab .

  • Revise la lista de verificación de seguridad para obtener más recomendaciones sobre seguridad para entornos de producción.

Próximos pasos