Аутентификация с помощью приложения Laravel Passport и React Frontend - PullRequest
0 голосов
/ 12 июня 2019

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

В приложении Laravel API входа возвращает токен доступа, сгенерированный Passport, наряду с другими данными.Я сохраняю этот токен доступа в Redux и каждый раз, когда делаю запрос, отправляю его на сервер.Однако после полной перезагрузки приложения я снова попадаю на страницу входа.Так как при полной перезагрузке будет сброшено состояние Redux, включая токен, поэтому я ожидаю, что.

Для решения этой проблемы я использую ответить-куки следующим образом:

1- логин пользователя

2- API возвращает ответ.

3- Сохраните ответ в Redux.

4- Используйте куки-реакции для сохранениятокен доступа в браузере.

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

6- Я думаю, чтоСледующим шагом для меня сейчас является создание API, который принимает параметр токена и возвращает информацию о пользователе, чтобы сохранить его в Redux.(Я еще не реализовал этот шаг, поэтому я не делаю сейчас, если это возможно и будет работать без проблем)

Пока все работает нормально, но я хочу, в общем, проверить с вамиесли это один из ПРАВИЛЬНЫХ СПОСОБОВ для аутентификации с помощью Laravel API и React?Я делаю что-то неправильно ?Я знаю, что есть много способов и методов.

1- Я хочу спросить, особым образом, могу ли я использовать установить cookie в ответе на вход в систему, чтобы сохранить токен, не используяреагировать печенье?Является ли это возможным ?И лучше ли?

2 - А как насчет безопасности моего приложения?Обязательно ли использовать CSRF в качестве мета-кода также для его защиты или достаточно использовать только токен доступа?

3- Как насчет токенов с истекшим сроком действия?Должен ли я создать API с именем check_session_status, чтобы проверить, есть ли у пользователя токен с истекшим сроком действия или нет?

React App - это изолированное приложение, я не генерировал его с помощью скаффолдинга Laravel, и я использую fetch для выполнения вызовов к конечным точкам.(не axios)

Спасибо за ваше время!

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