Firebase Security Rules обеспечивают надежную и полностью настраиваемую защиту ваших данных в Cloud Firestore , Realtime Database и Cloud Storage . Вы можете легко начать работу с Security Rules следуя инструкциям в этом руководстве, защитив свои данные и приложение от злоумышленников.
AI prompt for AI assistance
Для использования ИИ-помощи скопируйте приведенную ниже подсказку в свой агент программирования с поддержкой ИИ (например, Gemini в Android Studio, Antigravity , Claude Code, Codex и Cursor). Вы можете настроить подсказку и взаимодействовать с агентом. Подробную информацию об установке см. в разделе «Навыки агентов Firebase» .
Help me use Firebase in my app.
1. Make sure that **Firebase agent skills** are installed and updated. For Claude Code, Codex, or Cursor agents, help me install the Firebase plugin. For other agents, run `npx skills add firebase/agent-skills`. Always try to use **Firebase agent skills** for Firebase-related tasks.
2. Help me write, validate, and deploy Firebase Security Rules to protect my app's data.
Разберитесь в языке Firebase Security Rules
Прежде чем начать писать правила, стоит уделить время изучению языка Firebase Security Rules для используемых вами продуктов Firebase. Realtime Database для Security Rules используется синтаксис, похожий на JavaScript, и структура JSON. В свою очередь, Cloud Firestore и Cloud Storage используют расширенный набор языка выражений Common Expression Language (CEL), основанный на операторах match и allow , которые устанавливают условие доступа по определенному пути.
Узнайте больше о языке Firebase Security Rules .
Настройка Authentication
Если вы еще этого не сделали, идентифицируйте своих пользователей с помощью Firebase Authentication . Firebase Authentication поддерживает множество распространенных методов аутентификации и интегрируется с Firebase Security Rules , обеспечивая комплексные возможности проверки.
Вы можете настроить дополнительные, пользовательские данные для аутентификации вашего приложения.
Узнайте больше о Firebase Security Rules и Firebase Authentication .
Определите структуру ваших данных и правил.
Способ структурирования данных может повлиять на структуру и реализацию правил. При определении структур данных учитывайте, какое влияние они могут оказать на структуру Security Rules .
Например, в Cloud Firestore вы можете добавить поле, обозначающее конкретную роль для каждого пользователя. Затем ваши правила смогут считывать это поле и использовать его для предоставления доступа на основе ролей.
При определении архитектуры данных и правил помните, что если какое-либо правило предоставляет доступ к набору данных, то Firebase Security Rules предоставляют доступ к этому набору данных. Другими словами, вы не можете уточнить доступ по подпути, если вы предоставили доступ на более высоком уровне в иерархии данных.
Просмотрите свои правила
Чтобы просмотреть существующие Security Rules , используйте либо интерфейс командной строки Firebase , либо консоль Firebase . Убедитесь, что вы редактируете правила одним и тем же способом, последовательно, чтобы избежать случайной перезаписи обновлений. Если вы не уверены, соответствуют ли ваши локально определенные правила последним обновлениям, консоль Firebase всегда отображает самую последнюю развернутую версию ваших Firebase Security Rules .
Чтобы получить доступ к правилам из консоли Firebase , выберите свой проект, затем перейдите в Realtime Database , Cloud Firestore или «Хранилище» . После того, как вы окажетесь в нужной базе данных или хранилище, нажмите «Правила» .
Чтобы получить доступ к своим правилам из Firebase CLI, перейдите к файлу правил, указанному в вашем файле firebase.json .
Напишите основные правила
В процессе разработки приложения и изучения Security Rules попробуйте реализовать несколько базовых правил безопасности , включая следующие варианты использования:
- Только для владельцев контента: Ограничить доступ к контенту для каждого пользователя.
- Смешанный доступ: ограничить доступ на запись для каждого пользователя, но разрешить публичный доступ на чтение.
- Доступ на основе атрибутов: ограничение доступа для определенной группы или типа пользователей.
Проверьте свои правила
Для полной проверки поведения вашего приложения и подтверждения Firebase Security Rules
Для настройки параметров используйте эмулятор Firebase , чтобы запускать и автоматизировать модульные тесты в локальной среде.
Если вы настраиваете Firebase Security Rules в консоли Firebase , вы можете использовать симулятор правил Firebase для быстрой проверки их работы. Однако мы рекомендуем провести более тщательное тестирование с помощью эмулятора Firebase, прежде чем развертывать изменения в рабочей среде.
Развернуть правила
Для развертывания правил в рабочей среде используйте консоль Firebase или Firebase CLI. Следуйте инструкциям, описанным в разделе «Управление и развертывание Firebase Security Rules .