Ogólne wskazówki dotyczące bezpieczeństwa w różnych środowiskach programistycznych

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.