Есть ли причина, по которой выключение с одного устройства удаляет все постоянные токены входа (помнить-меня) для пользователя?Почему Spring при сохранении памяти помнит, что я удаляю все активные маркеры при выходе из системы?
В моем случае, например, пользователь может войти в систему с рабочего стола и планшета, а пользователь, выходящий с рабочего стола, не должен вызывать токен mem-памяти, используемый планшетами для удаления.
Текущая реализация в JdbcTokenRepositoryImpl
принимает только имя пользователя:
public void removeUserTokens(String username) {
getJdbcTemplate().update(removeUserTokensSql, username);
}
поэтому я создал пользовательскую реализацию RememberMeServices
и PersistentTokenRepository
, что только позволяют определенный ряд, чтобы исключить для пользователя:
public void removeUserTokens(String username, String presentedSeries) {
getJdbcTemplate().update(removeUserTokensSql, username, presentedSeries);
}
Это безопасно?
Спасибо за ваш ответ, я прочитал больше о Spring Session, и, похоже, это то, что я ищу. Правильно ли считать, что помните, что я устарел по сравнению с Spring Session? – W4pp
Весенняя сессия может полностью заменить Запомнить меня, но я бы не счел ее устаревшей. Причина в том, что в некоторых ситуациях пользователи могут не использовать Spring Session (т. Е. Политику) –