Постоянный пользовательский сеанс с использованием AWS Cognito в Electron - PullRequest
0 голосов
/ 03 сентября 2018

Сохранение сеанса пользователя AWS Cognito в Electron

AWS Cognito сохраняет текущий сеанс пользователя в localStorage. Хотя сеанс пользователя присутствует в localStorage после того, как пользователь вошел в систему, localStorage не сохраняется в Electron - поэтому, когда приложение перезапускается, сеанс пользователя пропадает, и пользователь должен снова войти в систему. Обычно пользовательский сеанс будет получен из localStorage, поскольку он является постоянным в браузерах.

Я знаю, что можно использовать Electron-JSON-Storage для постоянного хранения данных в Electron и, как правило, в приложениях узлов, но так как AWS Cognito использует localStorage, я могу использовать только подход, который изменит localStorage на постоянство, то есть перенаправит в хранилище файлов.

Я попытался node-localstorage , который работает, но Cognito по-прежнему использует localStorage из браузера, даже если установлен global.localStorage.

Я знаю, что userPool можно передать объект {Storage: ...}, чтобы использовать его в качестве хранилища, но он все еще использовал исходный localStorage, когда я передал ему node-localstorage.

TLDR;

  • Как сделать сеанс пользователя AWS Cognito постоянным в электронном виде?
  • Если возможно, могу ли я заменить localStorage на node-localstorage глобально, чтобы AWS Cognito использовал его?

1 Ответ

0 голосов
/ 03 сентября 2018

Cognito даст вам три жетона idToken, accessToken и refreshToken Простая идея - сохранить refreshToken в вашем localstorage, который вы считаете постоянным. и в электронном приложении начните использовать refreshToken для аутентификации пользователя в Cognito.

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