Узел Express Аутентификация / авторизация - PullRequest
0 голосов
/ 03 августа 2020

Я только начало, с node / express, и у меня вроде как проблема. Я создал приложение todo, используя node js express и mon go db, которое на самом деле имеет форму входа / регистрации ... т.е. вы можете зарегистрироваться и войти в систему (/ register) и (/ login) до того, как вы может получить доступ к приложению todo (/ todoapp). Моя проблема в том, что если пользователь A входит в систему со своим адресом электронной почты и паролем, вводит некоторые задачи и выходит из системы, позже пользователь B также может войти в систему со своим собственным адресом электронной почты и паролем, он может увидеть задачи пользователя A., но затем я хотите, чтобы он был другим, пользователь A должен иметь возможность видеть только свои задачи, пользователь B также должен иметь возможность видеть только свои задачи, пожалуйста, как мне это сделать?

Пожалуйста, мой алгоритм ниже - регистры пользователей (/ register) - пользователь перенаправляется на (/ login) *** успешно входит в систему и попадает в (/ todos)

, это отлично работает и отправляет всех вошедших в систему пользователей в одно и то же (/ todo)

1 Ответ

0 голосов
/ 03 августа 2020

Обычно вам нужно сохранить _id пользователя в сеансе или повар ie (на стороне клиента), когда пользователь успешно вошел в систему, а затем, когда пользователь делает запрос get / post, вы сначала проверяете, есть ли _id в его видении / cook ie соответствует _id в базе данных и отправляет пользователю только элементы с его _id (элементы, принадлежащие пользователю). вы можете зарегистрировать сеанс, когда пользователь входит в систему, но имейте в виду, что вы должны защитить от csrf.

Вы также можете использовать для этого JWT.

Я предлагаю вам найти хорошее руководство для JWT или авторизация с сессией и csrf protect.

Это большая тема, и лучше посмотреть хорошее видео или прочитать хорошую статью, чем скопировать код отсюда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...