Soy nuevo en la comunidad de stackoverflow, así que si hacer preguntas como esta sin código no está bien visto, hágame saber en los comentarios cómo hacer preguntas y respuestas como esta.
Parece que siempre hay videos/cursos sobre cómo crear aplicaciones web/móviles con Firebase, pero casi NADIE se enfoca en la seguridad de Firebase más allá de tocar brevemente las ' Reglas de seguridad de Firebase '. No recuerdo el último curso que he tomado que incluso lo mencionó.
De todos modos ¿Cuál es la mejor práctica y la forma segura de colocar las consultas de Firestore dentro de nuestro código/componentes del lado del cliente en React Native (Expo) o simplemente en Javascript en general?
Veo algunas personas que solo dicen que se aseguren de que mis ' Reglas de seguridad de Firestore ' estén en su lugar para evitar que alguien simplemente lea o escriba datos en mi base de datos de Firestore. También escuché que ' Firebase Cloud Functions ' es el mejor lugar para colocar nuestras consultas porque se realiza en el servidor y, por lo tanto, no se puede alterar el código (que supuestamente los buenos piratas informáticos pueden cambiar el código del cliente y hacer que haga lo que quieren). y si es así, ¿cómo lo hacen?).
Realmente quiero centrarme primero en la seguridad con los proyectos que construyo y parece que no puedo encontrar una buena respuesta o una explicación simple. Agradecería el conocimiento de cualquier persona sobre cómo escribir consultas seguras con Firebase.
Gracias por cualquier información o información adicional de antemano.
Al escribir consultas para recuperar documentos, tenga en cuenta que las reglas de seguridad no son filtros: las consultas son todo o nada. Para ahorrarle tiempo y recursos, Cloud Firestore evalúa una consulta contra su conjunto de resultados potencial en lugar de los valores de campo reales para todos sus documentos. Si una consulta podría devolver documentos que el cliente no tiene permiso para leer, la solicitud completa falla.
Aquí hay alguna documentación que podría ayudarlo a comprender cómo funciona laseguridad y cómo puede implementarla en su proyecto.