Jwt авторизация в приложении реакции без хранения токена в локальном хранилище - PullRequest
0 голосов
/ 08 октября 2019

На самом деле я собираюсь реализовать авторизацию jwt в своем первом приложении реагирования, и я просмотрел много статей, и все они предлагали хранить токен в локальном хранилище, которое я почему-то не считаю безопасным, так как токен виден. Таким образом, мне пришло в голову два решения, которые, очевидно, не являются лучшим решением, которое я здесь задаю. Решение 1. Генерация токена jwt на моей стороне реакции при каждом запросе API, но для этого мне нужно использовать секретный ключ на моем клиенте. сторона, которая, очевидно, является ПЛОХОЙ ИДЕЕЙ, разоблачающей секретный ключ. 2. Имея два экспресс-приложения, одно из которых запускает приложение реагирования, а другое - приложение api, вызов API из моего приложения реагирования попадет на сторону реагирования-экспресса, где я сгенерирую токен, и получу токен с помощью фактического API, я знаю, что его малоНадеюсь, вы, ребята, поняли, что я пытаюсь объяснить.

Это то, о чем я думал, и я знаю, что оба решения не очень хорошие, поэтому было бы очень полезно, если бы некоторые из вас предложили мне, как у васавторизация в вашем приложении

1 Ответ

0 голосов
/ 08 октября 2019
  1. Действительно, не очень хорошая идея выставить свой секретный ключ

  2. Зачем использовать несколько экспресс-приложений для этого? Вы можете пройти аутентификацию непосредственно в своем приложении «express express»

Эта замечательная статья о React, Express и JWT

О хранении JWTв браузере (вы в первую очередь) нет однозначного ответа. Эта статья объясняет преимущества и недостатки хранения в файлах cookie или в локальном / сеансовом хранилище. Но вам также необходимо сохранить его в браузере, так как вы должны отправлять его с каждым запросом.

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

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