Введение
Здравствуйте, сейчас у меня есть программа (написанная на C ++), которая использует JWT с exp
и nbf
.
Мой сервер использует UT C, а мой клиенты используют много разных часовых поясов, и некоторые из них имеют неправильные часы / минуты, установленные в их системе.
В моем php API я использую time()
и в приложении c ++, которое я использую GetSystemTimeAsFileTime
.
Проблема
Чтобы дать простой и реалистичный пример c, один из моих пользователей установил неправильный час, а jwt был недействительным, потому что он уже истек согласно к его времени.
Вещи, которые я пытался
Я подумал, ну, я могу попросить сервер его время, чтобы время пользователя не влияло на программу. Но есть недостаток: если jwt содержит время и это значение используется для сравнения с nbt
или exp
, тогда оно всегда будет действительным.
Просит пользователя установить правильное время Единственный способ решить эту проблему?
Заранее спасибо.