Логика сравнения правил безопасности Firebase - PullRequest
0 голосов
/ 04 октября 2019

У меня есть вопрос о том, как работает логика правил безопасности облачного пожарного хранилища:

Допустим, у меня есть такое правило:

allow read: if (auth.token.user === true && request.query.limit < 100 && uidInDocument()) || auth.token.admin === true && get(/databases/$(database)/documents/users/$(request.auth.uid)).data.name == "foo";

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

Заранее спасибо.

1 Ответ

0 голосов
/ 04 октября 2019

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

Пожалуйста, прочтите документацию для получения дополнительной информации.

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