Ведение сеанса между пользовательским интерфейсом (Angular 4) и JAVA - PullRequest
0 голосов
/ 04 июля 2019

Я создаю приложение для держателя карты, в котором пользовательский интерфейс находится в Angular 4, а Backend - в Spring Rest Service.Теперь есть экран входа в систему, поэтому, когда пользователь входит в систему, он может видеть другие экраны, такие как история транзакций, список валют, курсы валют и т. Д.

Теперь мои задачи заключаются в следующем: (1) Как зашифровать имя пользователя и парольчтобы предотвратить его от взлома.(2) Как сохранить пользовательский сеанс, поскольку у меня есть пользовательский интерфейс в Angular и серверная часть в Spring Rest (Java)

Пожалуйста, помогите

1 Ответ

1 голос
/ 04 июля 2019

Основываясь на определениях, REST api не сохраняют состояния, поэтому нет ни сессии, ни сохранения значений. Вам нужно что-то вроде jwt token,

1 - при входе пользователя в систему при входе в систему вы отправляете имя пользователя и пароль на имя пользователя

2 - серверная часть аутентифицирует пользователя, генерирует токен jwt и отправляет его во внешний интерфейс

3 - вы храните этот токен в памяти (в сервисе angular или в магазине ngrx)

4 - по другому запросу к серверу добавить токен в шапку

5 - серверная программа получает токен, десериализует его и знает, какой пользователь вызывает API

также ваш бэкэнд может проверить, если токен аутентификации отсутствует, возвращает 401, а затем в вашем веб-интерфейсе, если вы получаете перенаправление 401 на страницу входа, а остальные значения такие же, как указано выше

...