Использование Redis в весеннем загрузочном приложении с отдельным сервером IdP

У меня есть загрузочное приложение Spring, которое входит в систему, вызывая сервер IdP. Я получаю токен от этого IdP сервера при успешном входе в систему.

Этот токен должен использоваться для всех дальнейших взаимодействий, пока пользователь не выйдет из системы или не истечет срок действия сеанса.

Я пытаюсь использовать Redis для управления сеансом, и все руководства не дают объяснения, как это работает.

Мой вопрос: как мне использовать Redis для хранения сгенерированного токена и как его получить? Обрабатывает ли Redis это внутри себя или Redis генерирует свой собственный токен?


person Aashray    schedule 09.01.2017    source источник


Ответы (1)


Redis — это структура кэша "ключ-значение". Итак, для вашего случая вам нужно только сохранить в redis пару ключ-значение для каждого сеанса как:

ключ - это идентификатор сеанса

значение - это токен

При инициации сеанса и успешном входе в систему вы сохраняете пару. Во время сеанса вы можете получить доступ к кешу для проверки токена. Не забывайте освобождать кеш при выходе из системы или тайм-ауте сеанса.

person Nebras    schedule 10.01.2017
comment
Будет ли сервер redis пытаться пройти аутентификацию самостоятельно? Если да, то есть ли способ предотвратить это? - person Aashray; 10.01.2017
comment
НЕТ. Вы сохраняете токен, полученный с сервера IdP, в Redis. Redis не использует собственный токен. - person Nebras; 10.01.2017