Как бороться с разницей в серверном и местном времени при использовании JWT? - PullRequest
0 голосов
/ 12 апреля 2020

Введение

Здравствуйте, сейчас у меня есть программа (написанная на C ++), которая использует JWT с exp и nbf.

Мой сервер использует UT C, а мой клиенты используют много разных часовых поясов, и некоторые из них имеют неправильные часы / минуты, установленные в их системе.

В моем php API я использую time() и в приложении c ++, которое я использую GetSystemTimeAsFileTime.

Проблема

Чтобы дать простой и реалистичный пример c, один из моих пользователей установил неправильный час, а jwt был недействительным, потому что он уже истек согласно к его времени.

Вещи, которые я пытался

Я подумал, ну, я могу попросить сервер его время, чтобы время пользователя не влияло на программу. Но есть недостаток: если jwt содержит время и это значение используется для сравнения с nbt или exp, тогда оно всегда будет действительным.

Просит пользователя установить правильное время Единственный способ решить эту проблему?

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...