У меня есть база данных Firestore с двумя коллекциями: пользователи и турниры.Пользователи имеют роль участника и роль администратора и обозначаются логическими значениями isParticipant и isAdmin в пользовательском документе:
/users/{userId}:
isParticipant: true
isAdmin: true
У меня установлены правила доступа для этих коллекций, напримерИтак:
service cloud.firestore {
match /databases/{database}/documents {
match /users/{userId} {
allow create, read;
allow update: if request.auth.uid == userId;
}
match /tournaments/{tournamentId} {
allow create, read, update: if request.auth.uid != null;
}
}
}
Однако я действительно хочу ограничить создание турнира пользователем с ролью администратора.Я уже делаю это в коде, но хотел бы, чтобы дополнительная безопасность правила БД не позволяла никому, кроме администратора, создавать турниры.
Есть ли способ ссылаться на элемент данных другой коллекции всинтаксис правил?Что-то вроде:
match /tournaments/{tournamentId} {
allow create: if resources.users.userId.isAdmin == true;
}
?
Заранее спасибо.