Я вижу, что для получения поля документа в правилах безопасности нужно использовать get. В приведенном ниже примере показано получение поля 'admin' для некоторого документа в коллекции пользователей. Если бы я хотел получить другое поле, мне нужно было бы сделать еще один запрос на получение или я мог бы просто сделать один запрос на получение и получить все необходимые мне поля в документе.
Вот пример, на который я ссылаюсь в документации.
https://firebase.google.com/docs/firestore/security/rules-conditions
service cloud.firestore {
match /databases/{database}/documents {
match /cities/{city} {
// Make sure a 'users' document exists for the requesting user before
// allowing any writes to the 'cities' collection
allow create: if exists(/databases/$(database)/documents/users/$(request.auth.uid))
// Allow the user to delete cities if their user document has the
// 'admin' field set to 'true'
allow delete: if get(/databases/$(database)/documents/users/$(request.auth.uid)).data.admin == true
}
}
}