Na tej stronie opisujemy najważniejsze sprawdzone metody dotyczące bezpieczeństwa w różnych środowiskach. Szczegółowe i wyczerpujące wskazówki dotyczące bezpieczeństwa i Firebase znajdziesz w liście kontrolnej zabezpieczeń.
Bezpieczeństwo w środowiskach przedprodukcyjnych
Jedną z zalet oddzielenia środowisk w różnych projektach Firebase jest to, że złośliwy użytkownik, który uzyska dostęp do środowisk przedprodukcyjnych, nie będzie mógł uzyskać dostępu do danych prawdziwych użytkowników. Oto najważniejsze środki ostrożności, które należy podjąć w środowiskach przedprodukcyjnych:
Ogranicz dostęp do środowisk przedprodukcyjnych. W przypadku aplikacji mobilnych użyj App Distribution (lub podobnej), aby rozpowszechnić aplikację wśród określonej grupy osób. W przypadku aplikacji internetowych ograniczenie dostępu jest trudniejsze. Rozważ skonfigurowanie funkcji blokowania w środowiskach przedprodukcyjnych, która ogranicza dostęp do użytkowników z adresami e-mail należącymi do Twojej domeny. Jeśli używasz Firebase Hosting, skonfiguruj przepływy pracy przedprodukcyjnej tak, aby używały tymczasowych adresów URL podglądu.
Gdy środowisko nie musi być trwałe i jest używane tylko przez jedną osobę (lub w przypadku testów – przez jeden komputer), użyj Firebase Local Emulator Suite. Te emulatory są bezpieczniejsze i szybsze, ponieważ mogą działać w całości na hoście lokalnym zamiast korzystać z zasobów w chmurze.
Upewnij się, że w środowiskach przedprodukcyjnych masz skonfigurowane Firebase Security Rules, tak jak w środowisku produkcyjnym. Ogólnie rzecz biorąc, Security Rules powinny być takie same w różnych środowiskach, z tym zastrzeżeniem, że ponieważ reguły zmieniają się wraz z kodem, w potoku mogą występować reguły, które nie istnieją jeszcze w środowisku produkcyjnym.
Bezpieczeństwo w środowiskach produkcyjnych
Dane produkcyjne są zawsze celem ataku, nawet jeśli aplikacja jest mało znana. Postępowanie zgodnie z tymi wytycznymi nie uniemożliwia złośliwemu użytkownikowi uzyskania dostępu do Twoich danych, ale utrudnia mu to:
Włącz i wymuś korzystanie z usługi App Check we wszystkich używanych usługach , które ją obsługują. App Check zapewnia, że żądania do Twoich usług backendowych pochodzą z Twoich oryginalnych aplikacji. Aby z niej korzystać, musisz zarejestrować każdą wersję aplikacji w usłudze App Check. Najłatwiej jest to zrobić, zanim zaczniesz korzystać z aplikacji, więc skonfiguruj ją jak najszybciej.
Napisz solidne Firebase Security Rules. Realtime Database, Cloud Firestore, i Cloud Storage korzystają z reguł bezpieczeństwa skonfigurowanych przez dewelopera, aby określić, kto powinien mieć dostęp do danych, a kto nie.Security Rules Napisanie dobrych Security Rules jest niezbędne do zapewnienia bezpieczeństwa. Jeśli nie wiesz, jak to zrobić, zacznij od tych ćwiczeń z programowania.
Więcej rekomendacji dotyczących bezpieczeństwa w środowiskach produkcyjnych znajdziesz w liście kontrolnej zabezpieczeń.
Dalsze kroki
- Zapoznaj się z listą kontrolną dotyczącą wdrażania Firebase.