Взгляните на Правила не являются фильтрами из документов.
Вы разрешаете только те операции чтения, которые удовлетворяют request.auth.uid == resource.data.uid
, но вы пытаетесь прочитать все db.collection('messages')
collection.
Попробуйте прочитать db.collection('messages').where('uid', '==', currentUserUid)
.
(И не забудьте на самом деле добавить в сообщения свойство uid
.)
PS Ваши правила выглядят так, будто они предназначены для личных заметок, а не сообщений между пользователями. Если вы хотите, чтобы получатели отличались от авторов, вам придется изменить структуру данных и правила. Может быть, с полями authorUid
и recipientUid
, я не знаю, я еще ничего не делал в Firestore.