Начать работу с правилами безопасности Firebase

Правила безопасности Firebase обеспечивают надежную, полностью настраиваемую защиту ваших данных в Cloud Firestore, базе данных в реальном времени и облачном хранилище. Вы можете легко начать работу с правилами, выполнив действия, описанные в этом руководстве, для защиты ваших данных и защиты вашего приложения от злонамеренных пользователей.

Понять язык правил безопасности Firebase

Прежде чем вы начнете писать правила, стоит потратить некоторое время на изучение конкретного языка правил безопасности Firebase для продуктов Firebase, которые вы используете. База данных Realtime использует синтаксис, подобный JavaScript, и структуру JSON для своих правил. С другой стороны , облака Firestore и использовать Cloud Storage надмножеством Common Expression Language (КВЖД) , которая опирается на match и allow заявления , которые устанавливают условия для доступа на определенный путь.

Узнайте больше о языке Правила Firebase безопасности .

Настроить аутентификацию

Если вы еще не сделали это уже, идентифицировать пользователей с Firebase аутентификацией . Firebase Authentication поддерживает множество распространенных методов аутентификации и интегрируется с правилами безопасности Firebase, чтобы обеспечить всесторонние возможности проверки.

Вы можете настроить дополнительную информацию для аутентификации для своего приложения.

Узнайте больше о Firebase правил безопасности и Firebase подлинности .

Определите свои данные и структуры правил

То, как вы структурируете свои данные, может повлиять на то, как вы структурируете и реализуете свои правила. Когда вы определяете свои структуры данных, подумайте о последствиях, которые они могут иметь для вашей структуры правил.

Например, в Cloud Firestore вы можете захотеть включить поле, обозначающее конкретную роль для каждого пользователя. Затем ваши правила могут считывать это поле и использовать его для предоставления доступа на основе ролей.

Как вы определяете ваши данные и правила архитектуры, иметь в виду , что, если любое правило предоставляет доступ к набору данных, Firebase Правила безопасности предоставляет доступ к этому набору данных. Другими словами, вы не можете уточнить доступ по подпутью, если вы предоставили доступ на более высоком уровне в иерархии данных.

Получите доступ к своим правилам

Чтобы просмотреть существующие правила, используйте интерфейс командной строки Firebase или консоль Firebase. Убедитесь, что вы редактируете свои правила, используя один и тот же метод, последовательно, чтобы избежать ошибочной перезаписи обновлений. Если вы не уверены, отражают ли ваши локально определенные правила самые последние обновления, в консоли Firebase всегда отображается последняя развернутая версия ваших правил безопасности Firebase.

Чтобы получить доступ к правилам из Firebase консоли , выберите проект, затем перейдите в реальном времени базы данных, облачных Firestore или хранения. Нажмите Правила , как только вы находитесь в правильном ведре базы данных или хранения.

Чтобы получить доступ к правилам из Firebase CLI, перейдите в файл правил отмечен в вашем файле firebase.json .

Напишите основные правила

Как вы разрабатываете приложение и понимание правил, попробовать реализовать несколько основных правил безопасности , в том числе в следующих случаях использования:

  • Только Content-владелец: Ограничить доступ к контенту с помощью пользователя.
  • Смешанный доступ: Ограничить доступ на запись пользователя, но разрешить публичный доступ для чтения.
  • Атрибут-доступа: Ограничение доступа к группе или типу пользователя.

Проверьте свои правила

Чтобы полностью проверить поведение вашего приложения и проверить свои правила безопасности Firebase
конфигурации, используйте Firebase Эмулятор для запуска и автоматизации модульных тестов в локальной среде.

Если вы настраиваете ваши Firebase правила безопасности в консоли Firebase, вы можете использовать Firebase Правила Simulator быстро валидации поведения. Однако мы рекомендуем более тщательное тестирование с помощью эмулятора Firebase перед развертыванием изменений в рабочей среде.

Правила развертывания

Используйте консоль Firebase или интерфейс командной строки Firebase для развертывания правил в рабочей среде. Выполните действия , описанные в управление и развертывание правил безопасности Firebase .