как продлить срок действия в токене нормального доступа - PullRequest
0 голосов
/ 27 декабря 2018

Я читал о JWT, и я пытаюсь реализовать его на моем сервере.У меня уже есть API, который принимает пользователя и отправляет обратно JWT со временем истечения.Ну ... тогда у меня есть другой метод, который проверяет токен.Есть ли способ, который я могу использовать, чтобы продлить срок действия обычного токена доступа?я прочитал, что есть токен другого типа, называемый Refresh Token ... но это больше, чем мне нужно ... я просто хочу увеличить время истечения, вот и все

 jwt.sign({ user }, SECRET , { expiresIn: '5m'} ); // HOW I CREATE THE TOKEN
 jwt.verify(req.token, SECRET , (error, data) => {} <---- // HERE IS WHERE I WOULD LIKE TO INCREASE 

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Вам придется заново создать токен.Токен подписан, что делает его уникальным.Он отменяет назначение токена, если вы измените время истечения, и волшебным образом станет действительным.

Могу ли я попытаться понять, что мешает вам генерировать новый токен в том месте, где вы хотите увеличить время действия?

0 голосов
/ 27 декабря 2018

Как вы сказали, время истечения в JTW устанавливается, когда JWT генерируется и подписывается.Вы не можете изменить существующий токен, например, изменив время истечения, потому что после изменения подпись больше не будет правильной.Возможность внесения таких изменений сделает недействительной безопасность, которую использует JWT.

Я предлагаю вам прочитать о том, как работает JWT.Прочтите Signature часть следующей статьи: Введение в Json Web Tokens - jwt.io

Что вы можете с этим сделать?Просто выпустите новый JWT.

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