Cette page décrit les meilleures pratiques les plus importantes en matière de sécurité dans tous les environnements, mais consultez la liste de contrôle de sécurité pour obtenir des conseils plus détaillés et approfondis sur la sécurité et Firebase.
Sécurité pour les environnements de pré-production
L'un des avantages de la séparation des environnements dans différents projets Firebase est qu'un acteur malveillant capable d'accéder à vos environnements de pré-production ne pourra pas accéder aux données utilisateur réelles. Voici les précautions de sécurité les plus importantes à prendre pour les environnements de pré-production :
Limitez l'accès aux environnements de pré-production. Pour les applications mobiles, utilisez App Distribution (ou quelque chose de similaire) pour distribuer une application à un ensemble spécifique de personnes. Les applications Web sont plus difficiles à restreindre ; envisagez de configurer une fonction de blocage pour les environnements de pré-prod qui limite l'accès aux utilisateurs dont les adresses e-mail sont spécifiques à votre domaine. Ou, si vous utilisez Firebase Hosting, configurez vos workflows de pré-production pour utiliser des URL d'aperçu temporaires .
Lorsqu'un environnement n'a pas besoin d'être persistant et qu'il n'est utilisé que par une seule personne (ou dans le cas de tests, par une seule machine), utilisez Firebase Local Emulator Suite . Ces émulateurs sont plus sûrs et plus rapides car ils peuvent fonctionner entièrement sur localhost au lieu d'utiliser des ressources cloud.
Assurez-vous que les règles de sécurité Firebase sont configurées dans les environnements de pré-production, comme vous le faites dans la production. En général, les règles doivent être les mêmes dans tous les environnements, avec la mise en garde que puisque les règles changent avec le code, il peut y avoir des règles plus tôt dans le pipeline qui n'existent pas encore en production.
Sécurité des environnements de production
Les données de production sont toujours une cible, même si l'application est obscure. Le respect de ces directives n'empêche pas un acteur malveillant d'obtenir vos données, mais cela le rend plus difficile :
Activez et appliquez App Check pour tous les produits que vous utilisez et qui le prennent en charge. App Check s'assure que les demandes adressées à vos services backend proviennent de vos applications authentiques. Pour l'utiliser, vous devez enregistrer chaque version de votre application avec App Check. Il est plus facile de configurer avant d'avoir des utilisateurs, alors configurez-le dès que possible.
Rédigez des règles de sécurité Firebase robustes. La base de données en temps réel, Cloud Firestore et Cloud Storage s'appuient tous sur des règles configurées par le développeur pour appliquer qui doit et ne doit pas pouvoir accéder aux données. Il est essentiel pour votre sécurité que vous rédigiez de bonnes règles. Si vous ne savez pas comment procéder, commencez par cet atelier de programmation .
Consultez la liste de contrôle de sécurité pour plus de recommandations sur la sécurité des environnements de production.
Prochaines étapes
- Consultez la liste de contrôle de lancement de Firebase .