Правила безопасности Firebase для коллекций в коллекции - PullRequest
0 голосов
/ 20 марта 2020

Я пытаюсь установить правила безопасности firebase для всех коллекций в одной коллекции с помощью Firebase Firestore. У меня есть коллекция с именем Чаты внутри нее, у меня есть две коллекции, одна из которых - нить, а другая - пользователи. Все идентификаторы документов являются случайными.

Так выглядят мои данные Firebase:

enter image description here enter image description here

Я пытаюсь установить безопасность для всех чатов, обсуждений и пользователей. Поскольку чаты включают коллекцию потоков и коллекцию пользователей, но при настройке правила ниже: он не работает должным образом: отсутствуют или недостаточные разрешения.

// Chats can be read & written by all users
  match /Chats/{document} {
    allow read, create, update, delete, write: if true
  }

Я также попытался:

   match /Chats/{document}/thread/{document1} {
     allow read, create, update, delete, write: if true
    }


   match /Chats/{document}/users/{document2} {
     allow read, create, update, delete, write: if true
    } 

Но это не сработало, поэтому, если кто-то может помочь мне с этим.

1 Ответ

1 голос
/ 20 марта 2020

Ваши текущие правила соответствуют только документам в коллекции /Chats:

match /Chats/{userId} 

Для того, чтобы она также соответствовала вложенным коллекциям, она должна быть:

match /Chats/{document=**} {

Также см. документацию Firebase по защите иерархических данных , в частности, по рекурсивным групповым символам .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...