@StynuBlizz

Как следить за тем вошел ли пользователь или нет?

Всем привет помогите пожалуйтста,перелопатил туеву кучу инфы и в голове все в кашу перемешалось,никак не могу разобратьсяс тем как в android приложении следить за тем вошел ли пользователь или нет и со всем что. С этим связано? Все что я понял сводиться к таким действиям
• Пользователь логиниться и я высылаю ему токен (случайный набор знаков) и этот же токен в ввиде хэша сохраняю в БД на сервере
• Когда он заходит в программу в методе оncreate я смотрю есть ли у него этот токен(лежит есть ли он в shared preference),если есть то пропускаю в окно профиля если нету то на окно входа
• Следом свой первый запрос на сервер он посылает с этим токеном и если хэш присланного токена совпадает с тем что лежит в БД то я выдаю ему sesionId (также набор символом но со сроком годности) и также сохраняю его в бд (сохраняю в чистом ввиде) вместе с его сроком
• Теперь все запросы пользователь подписывает этим ид сессии и на сервере проверяю его на совпадение с тем что в бд и со сроком действия,если всю проверку проходит, то я его изменяю(!) обновляю время действия на начало и отправляю пользователю. Если он не совпадает с тем что лежит в БД или вышел срок действия то нужно пройти операцию по получению нового ид сессии с помощью токена лежащего в Sp,путем его сравнивания с тем что в бд,если и он не совпадает то пользователя выкидывает на окно входа

Получилось очень большое описание,но вы уж помогите разобраться все ли я правильно делаю или это вообще полная ерунда,и если полная ерунда то как сделать надо?Спасибо
  • Вопрос задан
  • 483 просмотра
Решения вопроса 1
fdhadzh
@fdhadzh
Perfectionist with deadlines
Я далек от разработки под Android, но могу посоветовать использовать JWT.

После предоставления пользователем логина и пароля отдаете ему 2 токена: access_token и refresh_token.

С помощью access_token пользователь взаимодействует с вашими API, а с помощью refresh_token Вы предоставляете ему возможность обновить данную пару токенов.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Пользователь логиниться и я высылаю ему токен (случайный набор знаков) и этот же токен в ввиде хэша сохраняю в БД на сервере
уже неверно!
Кто же пересылает токен по каналу управления?

cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы