Я просто скопирую вставить часть авторизации из официальной документации:
Правила базы данных Firebase включают встроенные переменные и функции
которые позволяют ссылаться на другие пути, временные метки на стороне сервера,
информация для аутентификации и многое другое. Вот пример правила, которое
предоставляет доступ на запись для аутентифицированных пользователей к /users/<uid>/
, где
идентификатор пользователя, полученный с помощью аутентификации Firebase.
{
"rules": {
"users": {
"$uid": {
".write": "$uid === auth.uid"
}
}
}
}
1011 *
*
Когда мы подходим к Вашему вопросу:
1) Таким образом, в вашем документе должно быть поле userId
, чтобы связать его с владельцем
2) Вы должны добавить к нему следующее правило:
{
"rules": {
"report": {
".read": "auth != null",
".write": "auth != null && ( (data.exists() && data.userId === auth.uid) || !data.exists() || !newData.exists() )"
}
}
}