Как разрешить доступ, только если в пожарном депо все совпадения верны - PullRequest
0 голосов
/ 26 ноября 2018

В пожарном магазине мы можем установить свои собственные правила безопасности.Я добавил 2 правила безопасности, в которых я дал доступ ко всем операциям crud в первом правиле и запретил удаление доступа ко всем документам определенной коллекции во втором правиле.Но из-за истинного условия 1-го правила условие 2-го правила игнорируется, поскольку в документе уже упоминалось, что для любого истинного условия доступ предоставляется.

Есть ли способ, которым я могу сделать в AND вместо OR.

Ниже приведены мои правила для справки:

service cloud.firestore {
  match /databases/{database}/documents {
  function isAuthenticated(){
    return request.auth.uid != null;
  }
  match /{collection}/{document = **}{
    allow get, update, delete, create: if isAuthenticated()
  }     
    match /records/{record} {
        allow delete: if false
    }
  }
}

1 Ответ

0 голосов
/ 26 ноября 2018

Не все правила являются ИЛИ, поэтому, как только он будет принят в запросе, обновлен и т. Д., Он будет обработан.

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

...