Я разработал приложение для Android, которое использует базу данных Firebase в реальном времени.Несколько узлов в БД хранят различные данные, собранные моим приложением.Для проверки подлинности вход в систему и регистрация по электронной почте и паролям работают правильно.Когда я регистрирую нового пользователя, аутентификация работает, но этому новому пользователю необходимо предоставить доступ к узлам базы данных firebase, которые использует приложение.Моему приложению необходимо предоставить этому новому пользователю доступ к узлам базы данных firebase, необходимым для взаимодействия с приложением.
Другими словами, как мне программно, через мое приложение, изменить правила доступа / безопасности узла firebase в моем приложении(когда я в настоящее время знаю только, как изменить их через пользовательский интерфейс браузера Firebase)?Я не вижу методов в FirebaseAuth, чтобы сделать это.Итак, куда мне идти отсюда?
Кроме того, очевидно, что у нового пользователя моего приложения не будет моих учетных данных, но он должен иметь возможность самостоятельно добавлять доступ к моим существующим узлам базы данных Firebase в реальном времени.Как мне это?
Вот правила, которые у меня есть сегодня (где мой UID - это мой фактический UID firebase):
{
"rules": {
".read": "auth.uid === my UID",
".write": "auth.uid === my UID"
}
}
Теперь я понимаю, что должен установить правила, позволяющие всем аутентифицированным пользователям читать и писать.данные в различных узлах моего дерева.Я пока не понимаю, как предоставить доступ по узлам и, в частности, по конкретным узлам на основе uid в дереве, где может быть много UID для каждого пользователя.Например, если мое дерево - root (top), то сообщения, затем UID для каждого пользователя, каков синтаксис для правила авторизации, которое позволит текущему пользователю / UID читать / записывать данные только в его / ее UIDпод root, сообщения, его / ее UID пользователя?