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

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

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

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

Начните с изучением основного синтаксиса языка правил Firebase безопасности .

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

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

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

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

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

Определите данные для безопасности

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

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

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

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

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

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

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

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

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

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

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

Если вы настраиваете ваши Firebase правила безопасности в консоли Firebase, вы можете использовать Firebase Правила Playground быстро валидации поведения. Тем не менее, мы рекомендуем более тщательное тестирование с локальной Emulator Suite , перед развертыванием изменения в производство.

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

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