Пишу чат на ангуляр с использованием Realtime Database и Firebase Authentication (всмысле пытаюсь написать). Все было хорошо и все работало. Правила для базы данных выглядели так:
{
"rules": {
".read": true,
".write": true
}
}
Оказалось то их нужно поменять. Может я неправильно их написала, но сейчас они выглядят так:
{
"rules": {
"users": {
"$uid": {
".read": true,
".write": "auth != null"
}
},
"messages": {
"$uid": {
".read": true,
".write": "auth != null"
}
}
}
}
С этими новыми правилами я стала получать ошибку при попытке вывести список сообщений:
Http failure response for https://.../messages.json: 401 Unauthorized
Почему "Unauthorized"? Я использую гуарды для защиты линка на страницу с чатом, где выводится список сообщений.
Я нашла что можно аутентифицировать пользователей при помощи токенов - приписав токен в конце зпроса:
"https://<DATABASE_NAME>.firebaseio.com/users/ada/name.json?auth=<ID_TOKEN>"
Я попыталась, мне это не удалось. Наверно это возможно, но хотелось бы узнать обязательно ли использовать токены у меня же есть аутентификация и возможно получить на пример имя пользователя:
auth.getAuth().currentUser.displayName;
Такой аутентификации недостаточно? Или может вместо можно использовать какие-нибудь данные из аутентификации?