1 - безопасно хранить их в localStorage.Стоит проверить, как защитить от межсайтовых скриптов атак;это особенно верно для сред с высоким уровнем безопасности.Копирование и вставка пользователей, вероятно, является маловероятной атакой, и, если у пользователя есть физический доступ к копированию и вставке, возможно, существуют другие «уязвимости», такие как использование сохраненных в браузере паролей.
2 - JWTшифрует идентификатор пользователя, включенный в претензию.Пользователь не может изменить это утверждение и сохранить его действительным (при условии наличия сильного ключа), поэтому нет необходимости проверять это в другом месте.
3 - Да!Поскольку в JWT есть претензия (например, роли пользователя), вы не хотите, чтобы она действовала вечно.Кроме того, вы хотите иметь способ гарантировать, что пользователи повторно проверят свои идентификационные данные (то есть снова войдут в систему) на случай, если что-то пойдет не так или украден токен.Когда вы кладете срок действия на токен, вы форсируете это.