Как передать авторизованного пользователя из одного приложения в другое, работающее на том же сервере? - PullRequest
1 голос
/ 18 марта 2019

Архитектура моего приложения примерно такая. У меня есть приложение, которое является концентратором для многих других приложений, которое позволяет пользователю передавать учетные данные.После проверки учетных данных приложение-концентратор представляет одно или несколько приложений, которые пользователю разрешено использовать.Если у пользователя есть только одно приложение, оно перенаправляется непосредственно в приложение.Как мне сохранить авторизованное состояние пользователя, переданного в хаб-приложении, и снова получить к нему доступ в дочернем приложении?

1 Ответ

0 голосов
/ 18 марта 2019

Нет «одного способа» сделать это.Но один из способов сделать это - предоставить Javascript Web Token (JWT) обратно клиенту, если они успешно вошли в систему.Затем сервер может достоверно узнать, кто является пользователем, который сделал запрос, если клиент предоставляет JWT в качестве заголовка запроса (обычно «Авторизация: перенос JWT-носителя». Вы можете хранить JWT в каком-то локальном хранилище.например, IndexDB для совместного использования между приложениями (при условии, что URL-адрес одного домена) и удаление его, если пользователь выходит из системы.

Кроме того, в случае, если это не очевидно, обязательно используйте HTTPS.существование LetsEncrypt.

, если вы используете Express.js, используйте пакеты express-jwt и jsonwebtoken для выполнения этой схемы.

...