Правила Firestore: разрешать только добавлять новые ключи в поле карты - PullRequest
0 голосов
/ 07 марта 2019

Я пишу систему чата с использованием Firestore. Для каждой учетной записи пользователя есть документ, который содержит открытые чаты пользователя в поле карты с именем channels.

Каждый раз, когда пользователь хочет с кем-то поговорить, идентификатор документа новой комнаты добавляется к карте обоих пользователей channels. Чтобы защитить эту карту и предотвратить вмешательство или удаление карты целиком, я бы хотел установить правило, согласно которому можно добавлять только новые значения, но не удалять ни одно. Возможно ли это?

Это моя текущая схема:

  • пользователей (коллекция)
    • userID (документ)
      • каналов (поле, карта)
        • channel1ID
          • имя
          • LastAccess
        • channel2ID
          • имя
          • LastAccess
        • ...
  • каналов (сборник)
    • channelID (документ)
      • сообщения (сборник)
...