У меня есть пользовательские доступы, хранящиеся в массиве объектов для учетных записей моих учетных документов / {accountId}
access: [
{uid:"xyz123",level:"admin"}
{uid:"xyz456",level:"view"}
]
Можно ли настроить правило пожарного депо с оператором in, чтобы проверить, совпадает ли идентификатор пользователя, запрашивающий данные один из объектов в этом массиве доступа.
Это работает в симуляторе, но в живом приложении мне отказывают в разрешениях
match /accounts/{document=**} {
allow read: if {"level":"owner", "uid":request.auth.uid} in resource.data.access;
allow read: if {"level":"view", "uid":request.auth.uid} in resource.data.access;
allow read: if {"level":"edit", "uid":request.auth.uid} in resource.data.access;
allow read: if {"level":"restricted", "uid":request.auth.uid} in resource.data.access;
}
Я хочу сохранить доступ к документам, так как они должны быть основаны на документах.