Я использую Laravel 5.2 и tymondesigns / jwt-auth.
Можно ли занести в черный список старый токен, если пользователь снова вошел в систему без выхода? Мне интересно узнать о безопасности старого токена.
Любые предложения о том, как улучшить «всегда входить в систему» на мобильном устройстве, поскольку в настоящее время я использую Laravel в качестве API.
Моя текущая конфигурация: ttl = 1 час & refresh_ttl = 2 недели
3 ответа
На самом деле ответ @Jeff может решить проблему. Мне нужно использовать промежуточное ПО jwt.refresh
.
Мой черный список JWT не работает, потому что я использую array
как CACHE_DRIVER
Я протестировал возврат к file
, поскольку CACHE_DRIVER
и jwt.refresh
работают, старый токен занесен в черный список, как и должно быть.
Я отмечаю это как ответ. Спасибо, Джефф.
Вы можете использовать промежуточное ПО jwt.refresh
, которое в ответ отправляет новый токен в качестве заголовка. Если у вас включен черный список, старый токен будет немедленно занесен в черный список. Просто включите jwt.refresh
в свой маршрут входа, а затем убедитесь, что захватили заголовок ответа и обновите свой локальный ключ. Затем вы можете сделать свои ttl
и refresh_ttl
неограниченными (т. Е. 60*60*24*365*10
)
Вы можете создать таблицу для хранения токена при первом входе пользователя в систему.
Когда этот пользователь снова входит в систему, вы получаете старый токен (из своей таблицы), затем заносите старый в черный список, обновляете таблицу новым, который создается сразу после входа в систему.
Похожие вопросы
Новые вопросы
api
НЕ ИСПОЛЬЗОВАТЬ. Вместо этого используйте специальные теги, например [google-cloud-platform], [facebook], [amazon-web-services] или [api-design]. Вопросы с просьбой порекомендовать или найти API не по теме.