Я пытаюсь реализовать пользовательскую защиту в моей базе данных Firebase Realtime.
В качестве базового примера я хочу, чтобы аутентифицированные пользователи могли читать / записывать свои собственные данные с узла "users".
Я проверил это в симуляторе правил БД в реальном времени, и я получил ошибочное чтение со следующими параметрами:
Location: /users
Authenticated: true
Provider: Anonymous
UID: "aLoBLejDJ5P4PDZkZhe2LTxO8x32" (tried with and without quotation marks)
Я получил "Имитация чтения запрещена" (без объяснения причин)но почему). То же самое происходит, когда я пытаюсь прочитать запрос REST HTTP GET («Ошибка: разрешение отклонено»).
Это моя структура БД:
{
"users" : {
"-LrAxMc5SANNe-p1Fd6n" : {
"test" : "lol",
"uid" : "aLoBLejDJ5P4PDZkZhe2LTxO8x32"
}
}
}
И эти правила таковыfar
{
"rules": {
"users" : {
".indexOn": "date",
"$uid": {
".read" : "$uid === auth.uid",
".write" : "$uid === auth.uid",
}
}
}
}
Ожидаемый результат состоял в том, чтобы получить данные пользователя THAT в ответе HTTP, вместо этого я получил вышеуказанные ошибки разрешения.
Будучи довольно новым для Firebase, я не знаю, чтопроблема в том, что если я неправильно понимаю / внедряю синтаксис правила или что-то еще.
Кроме того, uid, который я получил в ответе HTTP от регистрации (выше), выглядит очень по-другому по сравнению с образцом Uid образца I 'Вы видели в документации Firebase, не знаете, является ли это частью проблемы?
Единственный метод входа в мое приложение в настоящее время - это электронная почта + пароль.