В приложении React / Node я делаю следующее:
- Использование
User Pools
для приложения Cognito, которое я создал
- Вызов конечной точки / login с
response_type=token
в моем приложении React
- Как только я получаю токен JWT, я передаю его моему узлу / экспресс-серверу в заголовке (мой сервер использует ssl)
- На Node-сервере, используя пакет cognito-express для вызова
cognitoExpress.validate(accessTokenFromClient, callback)
на проверки токена
- Если вызов успешен, сохраняются данные пользователя (электронная почта и т. Д.) И jwt в
localStorage
в приложении React
И затем для каждого звонка на мой сервер я повторяю шаги 3 и 4 выше (проверка jwt), чтобы убедиться, что пользователь прошел проверку подлинности.
Моя проблема с вышеуказанным подходом:
Я не уверен, действительно ли cognito-express вызывает Cognito, или он просто декодирует jwt и принимает решение о его действительности локально
Я попытался оставить сеанс открытым на ночь, и я ожидал, что вызов на cognitoExpress.validate(accessTokenFromClient, callback)
не удастся (потому что jwt истекает через час), но это не так. Означает ли это, что токен jwt с истекшим сроком действия считается действительной претензией
Если пользователь прошел проверку подлинности и срок его JWT истек, как мне обновить JWT, не прося его войти снова?