Правила безопасности Firestore. Разрешить чтение полной коллекции (документов и вложенных коллекций)

#firebase #google-cloud-platform #google-cloud-firestore #firebase-security

#firebase #google-облачная платформа #google-облако-firestore #firebase-безопасность

Вопрос:

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

  match /books {
     allow write, update, delete: if false; // This collection cannot be modified
  
     match /sells {
         allow read: if true; // All documents and sub-collections of this collection are readable
     }
 }
  

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

Ответ №1:

Вам необходимо сопоставить документы в коллекции:

  match /sells/{doc} {
     allow read: if true; // All documents in sells are readable
 }
  

Если вы хотите также сопоставить вложенную коллекцию sells документа, вы можете использовать рекурсивный подстановочный знак, подобный этому:

  match /sells/{doc=**} {
     allow read: if true; // All documents in and sub-collections of sells are readable
 }