Na tej stronie opisujemy najważniejsze sprawdzone metody dotyczące bezpieczeństwa w różnych środowiskach. Aby uzyskać bardziej szczegółowe i wyczerpujące wskazówki dotyczące bezpieczeństwa i Firebase, zapoznaj się z listą kontrolną zabezpieczeń.
Zabezpieczenia środowisk przedprodukcyjnych
Jedną z zalet rozdzielenia środowisk w różnych projektach w Firebase jest to, że nieuczciwy podmiot, który uzyska dostęp do środowisk przedprodukcyjnych, nie będzie mógł uzyskać dostępu do rzeczywistych danych 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 podobnego rozwiązania), aby rozpowszechnić aplikację wśród określonej grupy osób. Aplikacje internetowe są trudniejsze do ograniczenia. Rozważ skonfigurowanie funkcji blokującej dla środowisk przedprodukcyjnych, która ogranicza dostęp do użytkowników z adresami e-mail specyficznymi dla Twojej domeny. Jeśli używasz Firebase Hosting, skonfiguruj przepływy pracy w środowisku przedprodukcyjnym, aby korzystać z tymczasowych adresów URL podglądu.
Jeśli środowisko nie musi być trwałe i jest używane tylko przez jedną osobę (lub w przypadku testów przez jedną maszynę), użyj Firebase Local Emulator Suite. Te emulatory są bezpieczniejsze i szybsze, ponieważ mogą działać całkowicie na hoście lokalnym, bez korzystania z zasobów w chmurze.
Upewnij się, że masz skonfigurowane Firebase Security Rules w środowiskach w wersji przedprodukcyjnej, tak samo jak w środowisku produkcyjnym. Ogólnie rzecz biorąc, Security Rules powinny być takie same we wszystkich środowiskach, z tym zastrzeżeniem, że ponieważ reguły zmieniają się wraz z kodem, na wcześniejszych etapach potoku mogą istnieć reguły, których nie ma jeszcze w środowisku produkcyjnym.
Bezpieczeństwo w środowiskach produkcyjnych
Dane produkcyjne są zawsze celem, nawet jeśli aplikacja jest mało znana. Postępowanie zgodnie z tymi wytycznymi nie uniemożliwi nieuczciwemu podmiotowi uzyskania dostępu do Twoich danych, ale utrudni mu to zadanie:
Włącz i wymuś stosowanie App Check we wszystkich używanych przez Ciebie usługach, które obsługują tę funkcję. App Check dba o to, aby żądania do usług backendu pochodziły z autentycznych aplikacji. Aby z niego korzystać, musisz zarejestrować każdą wersję aplikacji w App Check. Łatwiej jest skonfigurować tę funkcję, zanim zaczniesz mieć użytkowników, więc zrób to jak najszybciej.
Twórz solidne Firebase Security Rules. Realtime Database, Cloud Firestore i Cloud Storage korzystają z Security Rules skonfigurowanych przez dewelopera, aby określić, kto powinien, a kto nie powinien mieć dostępu do danych. Dla bezpieczeństwa ważne jest, aby tworzyć dobre Security Rules. Jeśli nie wiesz, jak to zrobić, zacznij od tego programu ćwiczeń.
Więcej zaleceń dotyczących zabezpieczeń środowisk produkcyjnych znajdziesz na liście kontrolnej dotyczącej bezpieczeństwa.
Dalsze kroki
- Zapoznaj się z listą kontrolną dotyczącą uruchamiania Firebase.