Вы можете установить срок действия токена через некоторое время. Но если злоумышленнику удастся украсть токен у клиента и использовать его? Можно ли обнаружить это событие и дать соответствующий ответ.
Если злоумышленник попытается украсть токен у клиента и использовать его, он находится вне вашего контроля. Это означает, что компьютер клиента был скомпрометирован, и у него есть более важные проблемы (клавиатурные шпионы, программы чтения с экрана и т. Д.)
Кроме того, когда срок действия токена истекает, необходимо выполнить другойтокен и вернуть его клиенту. Мой вопрос заключается в том, каковы преимущества безопасности этого ПО, просто позволяя клиенту иметь токен, который не имеет срока действия. Потому что если злоумышленнику удастся получить токен один раз. Существует высокая вероятность того, что они могут получить его снова
Повторный выпуск нового уникального токена гарантирует, что злоумышленник должен всегда быть в курсе самого нового токена. Опять же, если им удастся снова захватить токен, вы ничего не сможете сделать в этом сценарии.
Наконец, если вам приходится каждый раз выпускать новый токен, как вы можете убедиться, чтопользователь не должен повторно входить в систему каждый раз, и все это можно сделать в фоновом режиме?
Вы не должны доверять токенам с истекшим сроком действия (скажем, хакер обнаружил для вашего сайта 3-дневный jwt с истекшим сроком действия), это не должно позволить ему войти). Я бы посоветовал вам определить чувствительность вашего сайта и выяснить, должен ли он иметь срок действия 10 минут, 1 час или 24 часа. Я бы не делал больше 24 часов.
Если срок действия токена истек, вы должны потребовать, чтобы клиент снова вошел в систему. Однако, если срок его действия не истек, возможно, вы можете рассмотреть возможность выпуска нового токена, заменив старый токен, чтобы продлить срок его действия.