Когда пользователь успешно входит в систему, используя пару имени пользователя и пароля, я могу сохранить временный токен в БД, возможно, что-то вроде случайного числа.
Затем отправить этот закрытый ключ по протоколу SSL пользователю.
Позже он будет прикреплять этот секретный токен к каждому запросу.
Затем я проверю токен по БД, используя только стандартный запрос - используя токен и идентификатор пользователя (бездействительный идентификатор запроса не будет соответствовать).
Идентификатор используется для поиска фактического пользователя и сопоставления данного токена с данным в БД.ID является индексом, поэтому поиск будет n1 сложностью.
В БД я могу сохранить дату истечения срока действия токена и обработать, если пользователь должен обновить токен, отправив свой пароль еще раз.
И есть JWT.Я использую их самостоятельно, но я не уверен, что делаю это правильно.
JWT получает полезную нагрузку и сохраняет ее (где?) И возвращает токен.
Этот токен является закрытым исекретно и отправляется пользователю.
Позже, для каждого запроса он должен принести этот токен, который проверяется с помощью JWT.JWT после успешной проверки возвращает полезную нагрузку, которая была инициирована при создании JWT.
Проблема - как продлить срок действия JWT?Если токен JWT используется только в течение 15 минут активного пользователя, и каждое действие, которое он выполняет с БД, должно обновлять и повторно активировать токен в течение более 15 минут, как это сделать?
О производительности - использованиеИдентификатор для поиска и итерации по БД с использованием index имеет сложность n1.Можете ли вы сказать то же самое о знаке JWT и функциях проверки, которые используют хеширование?Сколько сил требуется для выполнения этого действия?это действие сильно потребляет процессор?ИЛИ это просто очень очень маленькая задача?