Я пишу правило, в котором вы можете писать в узел только в том случае, если счетчик другого узла меньше 5 или не существует вообще.
Я пробовал это, но продолжаю получать access_denied:
// payment needs to be set one of these two has to evaluate to true
".write": "!data.exists() && root.child('allUsers/serviceUsers/' + auth.uid + '/paymentDetails').exists() && (root.child('allUsers/serviceUsers/' + auth.uid + '/activeJobCounter').val() <= 5 || !root.child('allUsers/serviceUsers/' + auth.uid + '/activeJobCounter').exists())
Нет родительских узлов с .write
правилами над этим.
Узел по адресу:
'allUsers/serviceUsers/' + auth.uid + '/activeJobCounter'
не существуеткогда пользователь создается, но он создается после того, как пользователь загружает работу.
Поэтому после создания работы он скажет:
'allUsers/serviceUsers/' + auth.uid + '/activeJobCounter = 1'
Вот почему яЯ хочу разрешить запись в конкретный узел, если у пользователя есть задания NONE (несуществующий узел) ИЛИ МЕНЬШЕ, чем 5.
Я действительно понятия не имею, как отлаживать правила безопасности, кроме повторных попыток и не получить permission_denied
сообщение.