Проверка подлинности на основе токена JWT при каждом запросе приложения на приборной панели - PullRequest
0 голосов
/ 15 октября 2018

Я хочу создать систему входа в систему, используя JWT, и у меня есть следующие вопросы:

1- Мой логин клиента, и я генерирую для него токен и сохраняю его в локальном хранилище.,Теперь, если кто-то еще скопирует этот токен из локального хранилища браузера этого человека и вставит в его / ее (я имею в виду хакер) локальное хранилище браузера, этот хакер сможет войти?Если да, это безопасно?

2- Я поместил идентификатор пользователя в токен, который я сгенерировал при входе в систему.При каждом отправке запроса на сервер я декодирую токен и нахожу в нем userId.Теперь я должен сравнить этот идентификатор пользователя с чем-нибудь?Пример проверки, есть ли какой-либо сеанс с этим идентификатором пользователя в бэкэнде или даже проверка идентификатора пользователя по БД?

3- Должен ли я указать время истечения для токена JWT в локальном хранилище?

1 Ответ

0 голосов
/ 16 октября 2018

1 - безопасно хранить их в localStorage.Стоит проверить, как защитить от межсайтовых скриптов атак;это особенно верно для сред с высоким уровнем безопасности.Копирование и вставка пользователей, вероятно, является маловероятной атакой, и, если у пользователя есть физический доступ к копированию и вставке, возможно, существуют другие «уязвимости», такие как использование сохраненных в браузере паролей.

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

3 - Да!Поскольку в JWT есть претензия (например, роли пользователя), вы не хотите, чтобы она действовала вечно.Кроме того, вы хотите иметь способ гарантировать, что пользователи повторно проверят свои идентификационные данные (то есть снова войдут в систему) на случай, если что-то пойдет не так или украден токен.Когда вы кладете срок действия на токен, вы форсируете это.

...