Концепции аутентификации Auth0 (ReactJS) - PullRequest
0 голосов
/ 22 июня 2019

Можете ли вы объяснить мне концепцию работы Auth0? Без прохождения разрешений, просто аутентификация.

Я постараюсь описать, как я это понимаю, и моменты, которые я не понимаю.

  1. Пользователь нажимает кнопку, всплывающие окна авторизационной формы Auth0.
  2. Пользователь вводит свой адрес электронной почты и пароль, сервер Auth0 проверяет, правильно он или нет.
  3. Если учетные данные пользователя верны, Auth0 перенаправляет пользователя на URL, который я определил как обратный вызов. Отсюда много недоразумений о том, что происходит и что делать.

  4. Если учетные данные верны, сервер Auth0 создает в своей базе данных запись, которая содержит (очень упрощенное описание) отметку о том, что пользователь с такими учетными данными вошел в систему и его аутентификация будет сохраняться в течение N секунд. Эта запись имеет некоторый излом ID (access_token). Сервер выдает этот токен пользователю, и это делается путем открытия URL обратного вызова (который был задан мной в настройках) и передачи токена доступа в качестве параметра GET. Что мне делать дальше, когда я получу этот access_token? Обычно он использовался для запросов к API, но пока у меня нет вызовов API. Весь сайт защищен и требует только аутентификации.

Должен ли я просто установить флаг в локальном хранилище, чтобы пользователь вошел в систему, и это все? Как я должен проверить, если он все еще вошел в систему или истек срок действия access_token? Должен ли я поставить условие в основной файл App.js, который проверяет, истек ли срок действия ключа, а ключ обновления (скрытно) обновляется? Это еще одна вещь, которую я не могу понять. Если я хочу, чтобы пользователь вошел в систему в течение 1000 секунд, то по прошествии времени, как я могу проверить, что это тот же пользователь, а не какой-то злоумышленник? Обычно я должен перенаправить пользователя на страницу входа в систему, но во многих уроках обновление ключа производится без уведомления?

Можете ли вы объяснить эти моменты?

...