Я пользуюсь firestore, и у меня есть пользователи с атрибутом domain:
{
domain: "@domain.com"
}
В настоящее время я использую облачные функции для генерации случайного домена для пользователя при регистрации.Облачная функция запрашивает базу данных, чтобы проверить, существует ли случайный домен или нет, что вызывает задержку в несколько секунд.
Мой вопрос: есть ли способ предотвратить вставку нового пользователя, еслидругой пользователь уже существует с этим доменом только из правил безопасности Firestore без необходимости запрашивать всю базу данных?
До сих пор я пытался добавить это в свои правила безопасности, но это допускает дубликаты:
match /databases/{database}/documents {
match /users/{Id} {
allow read: if true;
allow create: if get(/databases/$(database)/documents/users/$(Id)).data.domain != request.resource.data.domain;
}
}
Есть идеи, возможно ли это или нет, используя только правила безопасности?