Понимание аутентификации пользователя Firebase

0

Я сделал простое приложение Angular + Firebase, которое вы можете увидеть здесь.

Я хочу добавить к нему аутентификацию пользователя с помощью Firebase и успешно смог создать учетную запись и войти в систему с помощью электронной почты и пароля Firebase.

Проблема в том, что я не знаю, как сделать следующий шаг для разделения каждого пользовательского данных - я хочу, чтобы каждый пользователь мог только изменять свои собственные данные и ничего не показывать, пока они не войдут в систему.

Единственное, что я мог подумать, это изменить URL-адрес firebase, который я использую, чтобы отделить FirebaseArrays, который я использую, но это кажется супер хакированным и не работает, когда я его пробовал.

Как я могу использовать уникальные uids для создания отдельных индивидуальных данных пользователя?

  • 0
    Вы хотите отредактировать только имя пользователя и пароль для пользователя, или вы хотите, чтобы другие данные были также доступны для редактирования
  • 0
    @gerdi Я не хочу редактировать имя пользователя и пароль, я хочу иметь возможность иметь данные, специфичные для каждого пользователя. Таким образом, каждый пользователь может войти в систему, просмотреть и изменить свой список книг, и как только они выйдут, эти данные будут недоступны. Извините за непонятность в моем первоначальном вопросе!
Теги:
firebase
authentication

1 ответ

0

Таким образом, каждый пользователь будет иметь уникальный идентификатор в таблице авторизации, к которой вы не можете напрямую обращаться (в том случае, когда вы не можете добавлять таблицы - firebase блокирует его по соображениям безопасности)

Это все еще позволяет разделить на основе идентификатора. Там будет, по сути, массив книг, вы можете добавить массив пользователей в каждую книгу, но это может стать излишним. Я считаю, что лучшим решением будет создание массива user_books. Это отобразит всех пользователей по идентификатору, имеющим книги, с идентификатором bookID как вложенным массивом

user_books
    -Jsdee23dnn23d2n3d
          |- sdfEDASED82342dsd : true
          |- SDEdsdfwer343dsdf : true  
    -Jsdeesdfffffs433
          |- 43334sdfsrfesrdfg : true
          |- sdfsf333fsdfsrrrr : true 

Это связывает книги с пользователями. Поэтому каждый пользователь имеет множество книг. Это цель для доступа, когда вы хотите, чтобы пользователь выполнял операции CRUD

var usersRef = new Firebase('https://test.firebaseio-demo.com/user_books');
var ref = usersRef.child('userID'); 

Когда вы создаете книгу, вам нужно будет обновить таблицу book таблицу user_books с выбранными пользователями (ами), связанными с книгой

  • 0
    Спасибо за подробный ответ! Я должен был указать более четко: я хочу, чтобы пользователи могли изменять свои собственные данные, как в том, какие книги они читают в настоящее время - я хочу, чтобы они могли войти в систему, увидеть свой собственный список книг (который был взят из базы данных), и сможет изменить его. Я просто не знаю, как создать новый раздел в моей базе данных Firebase для каждого пользователя, и взаимодействую только с этим разделом базы данных для каждого отдельного пользователя.
  • 0
    Обновлено. Не уверен, что это больше соответствует вопросу. Не уверен, если мне нужно вдаваться в подробности кода для создания фактических массивов
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню