Общие рекомендации по безопасности для различных сред рабочего процесса разработки
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
На этой странице описаны наиболее важные рекомендации по обеспечению безопасности в разных средах, но просмотрите контрольный список безопасности , чтобы получить более подробные и подробные инструкции по безопасности и Firebase.
Безопасность для предпроизводственных сред
Одним из преимуществ разделения сред в разных проектах Firebase является то, что злоумышленник, имеющий доступ к вашим предварительным средам, не сможет получить доступ к реальным пользовательским данным. Вот наиболее важные меры безопасности, которые следует принять в предпроизводственных средах:
Ограничьте доступ к предварительным средам. Для мобильных приложений используйте App Distribution (или что-то подобное), чтобы распространять приложение среди определенной группы людей. Веб-приложения труднее ограничить; рассмотрите возможность настройки функции блокировки для предварительных сред, которая ограничивает доступ пользователей с адресами электронной почты, специфичными для вашего домена. Или, если вы используете Firebase Hosting , настройте рабочие процессы предварительной версии на использование временных URL-адресов предварительного просмотра .
Если среду не нужно сохранять и она используется только одним человеком (или, в случае тестов, одной машиной), используйте Firebase Local Emulator Suite . Эти эмуляторы безопаснее и быстрее, поскольку могут работать полностью на локальном хосте вместо использования облачных ресурсов.
Убедитесь, что в предпроизводственных средах у вас настроены Firebase Security Rules , так же, как и в рабочей версии. В общем, Rules должны быть одинаковыми во всех средах, с оговоркой, что, поскольку правила меняются вместе с кодом, на более ранних этапах конвейера могут существовать правила, которые еще не существуют в рабочей среде.
Безопасность для производственных сред
Производственные данные всегда являются целью, даже если приложение малоизвестно. Следование этим рекомендациям не лишает злоумышленника возможности получить ваши данные, но усложняет эту задачу:
Включите и включите App Check для всех используемых вами продуктов, которые ее поддерживают. App Check гарантирует, что запросы к вашим серверным службам поступают от ваших подлинных приложений. Чтобы использовать его, вам необходимо зарегистрировать каждую версию вашего приложения с помощью App Check . Эту настройку проще выполнить до того, как у вас появятся пользователи, поэтому настройте ее как можно скорее.
Напишите надежные Firebase Security Rules . Realtime Database , Cloud Firestore и Cloud Storage полагаются на настроенные разработчиком Rules , определяющие, кто должен, а кто не должен иметь доступ к данным. Для вашей безопасности важно писать хорошие Rules . Если вы не знаете, как это сделать, начните с этой кодовой лаборатории .
Ознакомьтесь с контрольным списком безопасности , чтобы получить дополнительные рекомендации по безопасности производственных сред.
Следующие шаги
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-25 UTC.
[null,null,["Последнее обновление: 2025-07-25 UTC."],[],[],null,["This page describes the most important best practices for security across\nenvironments, but review the\n[*Security checklist*](/support/guides/security-checklist) for more detailed and\nthorough guidance about security and Firebase.\n\nSecurity for pre-production environments\n\nOne benefit of separating environments in different Firebase projects is that a\nmalicious actor who is able to access your pre-prod environments won't be able\naccess real user data. Here are the most important security precautions to take\nfor pre-production environments:\n\n- Limit access to pre-prod environments. For mobile apps, use\n [App Distribution](/docs/app-distribution) (or something similar) to distribute\n an app to a specific set of people. Web applications are harder to restrict;\n consider setting up a\n [blocking function](https://cloud.google.com/identity-platform/docs/blocking-functions)\n for the pre-prod environments that restricts access to users with email\n addresses that are specific to your domain. Or, if you're using\n Firebase Hosting, set up your pre-prod workflows to use\n [temporary preview URLs](/docs/hosting/test-preview-deploy).\n\n- When an environment doesn't need to be persisted and is only being used by one\n person (or in the case of tests, by one machine) use the\n [Firebase Local Emulator Suite](/docs/emulator-suite). These emulators are safer\n and faster because they can work entirely on localhost instead of using cloud\n resources.\n\n- Make sure that you have [Firebase Security Rules](/docs/rules) set up in pre-production\n environments, just as you do in prod. In general, the Rules should\n be the same across environments, with the caveat that since rules change with\n code, there may be rules earlier in the pipeline that don't yet exist in\n production.\n\nSecurity for production environments\n\nProduction data is always a target, even if the app is obscure. Following these\nguidelines doesn't make it impossible for a malicious actor to get your data,\nbut it makes it more difficult:\n\n- Enable and enforce [App Check](/docs/app-check) for all the products\n you're using that support it. App Check makes sure that requests to your\n backend services are coming from your genuine apps. In order to use it, you\n need to register each version of your app with App Check. It's easier to\n set up before you have users, so set it up as soon as possible.\n\n- Write robust [Firebase Security Rules](/docs/rules). Realtime Database, Cloud Firestore, and\n Cloud Storage all rely on developer-configured Rules to\n enforce who should and shouldn't be able to access data. It's essential to\n your security that you write good Rules. If you're not sure how,\n start with this [codelab](/codelabs/firebase-rules).\n\n- Review the [*Security checklist*](/support/guides/security-checklist) for more\n recommendations about security for production environments.\n\nNext steps\n\n- Review the [Firebase launch checklist](/support/guides/launch-checklist)."]]