Я очень новичок в JWT, и я закончил наследование кодовой базы, которая использует JWT. Теперь есть некоторые очень фундаментальные проблемы, с которыми я столкнулся, и я не нахожу ответов. Этот вопрос не основан на коде, поэтому, пожалуйста, несите меня.Обновление токена JWT (раздвижные сессии) и выписка
Скажем, мой токен JWT действителен в течение 4 часов. Вот мои требования/ограничения
Если пользователь работает через 3 часа 59 минут. их сеанс должен быть расширен на 2 часа, и им не требуется повторно вводить учетные данные.
Скрипт java на стороне клиента не должен кэшировать учетные данные пользователя каким-либо образом.
Это нормально обновить токен JWT новым ... но вы не должны делать это при каждом запросе, который вы делаете на сервере. Таким образом, клиент должен быть умным, чтобы обновить токен JWT, когда настало время. Вы не должны пытаться выпустить новый токен при каждом запросе, который вы делаете в приложении, потому что мы закончим сценарий, в котором у нас есть 1000 активных токенов, сгенерированных в течение сеанса, и все они активны. это делает требование выписки еще более сложным.
Как только пользователь нажимает кнопку выписки. токен JWT больше не должен использоваться. Несмотря на то, что срок его службы остается в силе.
Если выдается сигнал. Все жетоны, которые были выпущены (как часть расширения сессии), должны быть признаны недействительными. Не только последний.
Я начинаю читать о JWT, но, похоже, мои требования не могут быть выполнены с JWT. эти требования очень легко встречаются с подходом идентификатора сеанса. но я пока не хочу отказываться от JWT.